1 Scanner类
1.1 API的概述
API (Application Program Interface):应用程序接口;是Java提供很多类和接口以来帮助我们编程。我们在拿到一个API文档的时候,第一个要看包路径;第二看构造方法;第三看方法摘要。
1.2 引用类型的使用步骤
功能:可以实现键盘输入数据。
引用类型的一般使用步骤:(除了基本数据类型,都是引用类型,所以scanner也是一个引用类型)
(1)导包 import 包路径.包名称; 特殊情况:在java的API中,只有java.lang包下的内容不需要导包,可以直接使用;比如String类。 (2)创建 类名称 对象名=new 类名称(); (3)使用 对象名.成员方法名();
1.3 Scanner类的使用步骤
package com.yc.page4; import java.util.Scanner; //1.导包 public class ScannerDemo { public static void main(String[] args) { Scanner sc=new Scanner(System.in); //2、创建 int num=sc.nextInt(); //3、使用 System.out.println("输入的是"+num); //输入数字 String str=sc.next(); System.out.println("输入的字符串是"+str); //输入字符串 } }
1.4 匿名对象
创建对象的格式是: 类名称 对象名=new 类名称();
匿名对象只有后面的new 类名称()
注意事项: 匿名对象只能使用一次。
1 public class Human { 2 String name; 3 public void show() { 4 System.out.println("我叫"+name); 5 } 6 } 7 8 public static void main(String[] args) { 9 new Human().name="张三"; 10 new Human().show(); 11 12 } 结果为:null;因为进行了两次new,说明创建了两个对象,所以证明匿名对象只能使用一次。
1.5 匿名对象作为方法的参数
1 public static void main(String[] args) { 2 //1、普通使用方法 3 /* Scanner sc=new Scanner(System.in); 4 int num=sc.nextInt(); 5 System.out.println("输入的是:"+num); */ 6 7 //2、匿名对象使用方法 8 /* int num=new Scanner(System.in).nextInt(); 9 System.out.println("输入的是:"+num); */ 10 11 //3、匿名对象作为方法的参数 12 // methodDemo(new Scanner(System.in)); 13 14 //4、匿名对象作为方法的返回参数 15 Scanner sc=returnDemo(); 16 int num=sc.nextInt(); 17 System.out.println("输入的是:"+num); 18 } 19 public static void methodDemo(Scanner sc) { 20 int num=sc.nextInt(); 21 System.out.println("输入的是:"+num); 22 } 23 public static Scanner returnDemo() { 24 return new Scanner(System.in); 25 26 }
1.6 random的概述和基本使用
random类用来生成随机数。使用起来也是三步骤。
1 导包
2 创建
3 使用
(1)不带参数生成的随机数
public static void main(String[] args) { Random r=new Random(); //创建 int num=r.nextInt(); //使用,不带参数的生成的是int型的任意一个数字 System.out.println(num); }
(2)生成指定范围的数字
public static void main(String[] args) { Random r=new Random(); //创建 int num=r.nextInt(10); //使用,带参数的生成左开右闭的数字[0,9) System.out.println(num); }
1.7 对象数组
1 public class Person { 2 private String name; 3 private int age; 4 public String getName() { 5 return name; 6 } 7 public void setName(String name) { 8 this.name = name; 9 } 10 public int getAge() { 11 return age; 12 } 13 public void setAge(int age) { 14 this.age = age; 15 } 16 public Person(String name, int age) { 17 this.name = name; 18 this.age = age; 19 } 20 public Person() { 21 22 } 23 24 public static void main(String[] args) { 25 Person one=new Person("张三",24); //创建对象 26 Person two=new Person("李四",25); 27 Person three=new Person("王五",26); 28 Person []arry=new Person[3]; //创建对象数组 29 arry[0]=one; //把对象的地址值赋值给数组 30 arry[1]=two; 31 arry[2]=three; 32 System.out.println(arry[0]); //打印地址值 33 System.out.println(arry[1]); 34 System.out.println(arry[2]); 35 System.out.println(arry[0].getName()); //get方法获取对象值 36 System.out.println(arry[1].getName()); 37 System.out.println(arry[2].getName()); 38 System.out.println(arry[0].getAge()); 39 System.out.println(arry[1].getAge()); 40 System.out.println(arry[2].getAge()); 41 }
对象数组的弊端就是,一旦确定了数组的大小,就不能更改了。如果事先不知道对象有几个用数组会显得很麻烦。所以引出了ArrayList集合。
1.8 ArrayList集合
数组的长度不可以发生改变,但是ArrayList集合的长度是可以随意变化的。
在观察API的时候发现有一个<E>;<E>代表的是泛型;也就是在集合中所有的元素,全都是统一类型的数据。(泛型只能是引用类型,不能装基本数据类型)。
对于ArrayList集合来说,直接打印得到的不是地址值,而是内容;如果内容是空,得到的是空的中括号:[]。
1 public static void main(String[] args) { 2 ArrayList<String> list=new ArrayList<String>(); 3 System.out.println(list); 4 5 }结果:[]
1.8.1 ArrayList常用方法
(1)add方法
往集合里添加元素。
(2)get方法
从集合里取元素,参数是索引编号,返回的是对应位置的元素。
(3)remove方法
从集合里删除元素,参数是索引编号,返回的是对应位置的元素。
(4)size方法
获取集合的长度。
1 public static void main(String[] args) { 2 ArrayList<String> list=new ArrayList<String>(); 3 list.add("a"); //添加元素 4 list.add("b"); 5 list.add("c"); 6 list.add("d"); 7 list.add("e"); 8 System.out.println(list); 9 String name=list.get(3); //获取元素 10 System.out.println(name); 11 String remove=list.remove(3); //删除元素 12 System.out.println(remove); 13 System.out.println(list); 14 int num=list.size(); //获取集合长度 15 System.out.println(num); 16 }
1.8.2 ArrayList集合的遍历
遍历首先想到的是for循环,数组的长度是length方法,集合是size方法,所以代码为
1 public static void main(String[] args) { 2 ArrayList<String> list=new ArrayList<String>(); 3 list.add("a"); //添加元素 4 list.add("b"); 5 list.add("c"); 6 list.add("d"); 7 list.add("e"); 8 for(int i=0;i<list.size();i++) { 9 System.out.println(list.get(i)); 10 }
1.8.3 ArrayList集合存储基本数据类型
ArrayList只能存储引用数据类型,不能存储基本数据类型。如果ArrayList想存储基本数据类型;这里引出了包装类。8种基本数据类型对应的包装类分别为:
byte Byte short Short int Integer long Long floot Floot double Double char Character boolean Boolean
从JDK1.5以后,支持自动装箱和自动拆箱。
自动装箱:基本数据类型---》包装类型
自动拆箱:包装类型---》基本数据类型
原文地址:https://www.cnblogs.com/bi14/p/11943700.html