学习API与Scanner,Random,ArrayList

一,A
API:JDK给我们提供的类和接口,每个类和接口又有很多的方法
API文档相当于程序员的字典,可以查看JDK给我们提供的API的信息,比如作用、使用方式等
说的通俗易懂一些,就是别人写好的代码,或者编译好的程序,提供给你使用的代码程序,就叫做API。你可以当成自己写的使用,当你使用了别人代码(或者程序)中的某个函数、类、对象,就叫做使用了某个API。
在Java的API中,类是被包装在包里面的。所以要使用API中的类,你必须要知道它是被放在哪个包里了。

    **API**文档使用:可以直接在java.sun.com网站上在线查询阅读。
    1. 打开帮助文档。 
    2. 点击显示,找到索引,看到输入框。 
    3. 你要找谁?在输入框里输入,然后回车。
    4. 看包。java.lang下的类不需要导包,其他需要。 
    5.  看类的解释和说明。 
    6. 学习构造方法。

二,Scanner
是一个可以解析基本类型和字符串的简单文本扫描器。 例如,以下代码使用户能够从 System.in 中读取一个数:

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();

备注:System.in 系统输入指的是通过键盘录入数据。

引用类型使用步骤:
    1.导包  ,2.创建对象 , 3.调用方法。
 导包:    使用import关键字导包,在类的所有代码之前导包,引入要使用的类型,java.lang包下的所有类无需导入。 格 式: import  包名.类名;              
举例:java.util.Scanner;

创建对象:
    使用该类的构造方法,创建一个该类的对象。格式:
    数据类型   变量名 = new  数据类型(参数列表);
举例:
    Scanner sc = new Scanner(System.in);

调用方法
调用该类的成员方法,完成指定功能,格式:
    变量名.方法名();
举例:
    int i = sc.nextInt(); //接受一个键盘录入的整数。
查看类


java.util.Scanner :该类需要import导入后使用。
查看构造方:
public Scanner(InputStream source) : 构造一个新的 Scanner ,它生成的值是从指定的输入流扫描的。
查看成员方法:
public int nextInt() :将输入信息的下一个标记扫描为一个 int 值。

使用Scanner类,完成接收键盘录入数据的操作,代码如下:
//1.导包
import java.util.Scanner;
public calss Demo01_Scanner{
public static void main(String[] args){
//2.创建键盘录入数据的对象
Scanner sc = new Scanner(System.in);
//3.接受数据
System.out.println(“请录入一个整数:”);
int i = sc.nextInt();
//4.输出数据
System.out.println(“i:”+i);
}
}
Scanner练习:
1.求和:键盘录入两个数据并求和,
代码如下:

import java.util.Scanner;
public class Tes01Scanner{
public static void main (String[] args){
//创建对象
Scanner sc = new Scanner(System.in);
//接受数据
System.out.println(“请输入第一个数据:”);
int a = sc.nextInt();
System.out.printlln(“请输入第二个数据:”);
int b = sc.nextInt();
//对数据进行求和
int sum = a + b;
}
}
2.求最值:
键盘录三个数据并获取最大值,代码如下:
import java.util.Scanner;
public calss Test02Scanner{
public static void main(String[] args){
//键盘录入
System.out.println(“请输入第一个数据:”);
int a = new Scanner(System.in).nextInt();
System.out.println(“请输入第二个数据:”);
int b = new Scanner(System.in).nextInt();
System.out.println(“请输入第三个数据:”);
int c = new Scanner(System.in).nextInt();

  //如何获取三个数据的最大值 
  int temp = (a > b ? a : b); 
  int max = (temp > c ? temp : c);  
//三元运算符方法求最大值   
// int max = (a > b ? a : b) > c ? (a > b ? a : b) : c; 

  System.out.println("max:"+max); 
 }

Random类:
什么是Random类:此类的实例用于生成伪随机数。
例如,以下代码使用户能够得到一个0~100的随机数:
(注:这里的区间的[ ) )
Random r = new Random();
int i = r.nextInt(100);
//还可以这样写:int r = (int)(Math.random()*100); 查看类
java.util.Random :该类需要 import导入使后使用。
查看构造方法
public Random() :创建一个新的随机数生成器。
查看成员方法
public int nextInt(int n) :返回一个伪随机数,范围在 0 (包括)和 指定值 n (不包括)之间的 int 值。

获取随机数
获取随机数1-n之间的随机数,包含n,代码如下:
import java.util.Random;
public class Test01Random {
public static void main(String[] args) {
int n = 50;
// 创建对象
int n = Random r = new Random();
// 获取随机数
int number = r.nextInt(n) + 1;
// 输出随机数
System.out.println(“number:” + number);
}
}

ArrayList类
java.util.ArrayList 是大小可变的数组的实现,存储在内的数据称为元素。此类提供一些方法来操作内部存储 的元素。 ArrayList 中可不断添加元素,其大小也自动增长。
查看类
java.util.ArrayList :该类需要 import导入使后使用。
,表示一种指定的数据类型,叫做泛型。 E ,取自Element(元素)的首字母。在出现 E 的地方,我们使 用一种引用数据类型将其替换即可,表示我们将存储哪种引用类型的元素。代码如下:

 ArrayList<String> 

查看构造方法
public Arr个ist() :构造一内容空的集合。
基本格式:
ArrayListlist = new ArrayList();
差看成员方法:
public boolean add(E e) : 将指定的元素添加到此集合的尾部。 参数 E e ,在构造ArrayList对象时, 指定了什么数据类型,那么 add(E e) 方法中,只能添加什么数据 类型的对象
使用ArrayList类,存储三个字符串元素,代码如下:
public class Test {
//创建学生数组
ArrayList list = new ArrayList<>();
//创建学生对象
String s1 = “曹”;
String s2 = “刘”;
String s3 = “孙”;
//打印学生ArrayList集合
System.out.println(list);
//把学生对象作为元素添加到集合
list.add(s1);
list.add(s2);
list.add(s3);
//打印学生ArrayList集合
System.out.println(list);
}
对于元素的操作,基本体现在——增、删、查。常用的方法有:
add(Object elem) :向集合中加入参数
remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界 。
contains(Object elem):如果没有对象参数匹配返回“true;
isEmpty():如果list中没有元素返回“true;
indexOf(Object elem):返回值对象参数的索引或1

       如何存储基本数据类型:
       ArrayList对象不能存储基本类型,只能存储引用类型的数据。类似 <int> 不能写,但是存储基本数据类型对应的 包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下


基本类型 基本类型包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
我们发现,只有 Integer 和 Character 需要特殊记忆,其他基本类型只是首字母写即可
ArrayList练习
生成6个1~33之间的随机整数,添加到集合,并遍历;
public class Test{
public static void main (String[] args){
//创建Random 对象
Random random = new Random();

          //创建ArrayList 对象
          ArrayList<Integer>list = new ArrayList<>();                 

            //添加随机数到集合  
              for( int i = 0; i < 6 ; i++){   
               int r = random.nextInt(33)+1;    
               list.add(r);
           }    
              //遍历集合输出     
              for ( int i = 0; i < list.size(); i++) {    
             System.out.println(list.get(i));    
           }
          }
         }  

2.定义获取所有偶数元素集合的方法(ArrayLi st类型作为返回值)
public class Test {
public static void main(String[] args){
//创建Random 对象
Random random = new Random();
//创建ArrayList 对象
ArrayListlist = new ArrayList<>();

       // 添加随机数到集合  
           for (int i = 0; i < 20; i++) {   
                 int r = random.nextInt(1000) + 1;   
                  list.add(r);   
           }                       
               //调用偶数集合的方法  
                ArrayList<Integer> arrayList = getArrayList(list);                   
                    System.out.println(arrayList);                
                }                             
        public static ArrayList<Integer> getArrayList(ArrayList<Integer> list) {                       
          // 创建小集合,来保存偶数                                     
            ArrayList<Integer> smallList = new ArrayList<>();                             
                 // 遍历list                                            
                   for (int i = 0; i < list.size(); i++) {                                 
               // 获取元素
         Integer num = list.get(i);   
             // 判断为偶数,添加到小集合中                       
                if (num % 2 == 0){               
                   smallList.add(num);               
                 }                       
             }                    
             // 返回小集合                         
            return smallList;                    
       }                        
       }

猜你喜欢

转载自blog.csdn.net/qq_42815122/article/details/81262040