1. 容器:将多个数据存储到⼀起,每个数据都称为该容器的⼀个元素 2. 数组:数组就是⽤于存储数据的固定的容器,保证多个数据的数据 类型要⼀致 3. 数组的特点: 1. 数组的长度⼀但确定不能修改 2. 创建数组时,会在内存中开辟⼀块连续的空间 3. 存取元素的速度 快,因为可以通过下标,直接定位到任意⼀个 元素 4. 数组定义 1. ⽅式⼀:静态初始化 数据类型[ ] 数组名 = {元素1,元素2,。。。。} 2. ⽅式⼆: 静态初始化 数据类型[ ] 数组名 = new 数据类型[ ] {元素1,元素2,。。。。} 3. ⽅式三: 动态初始化 1. 数据类型 [ ] 数组名; 2. 数组名 = new 数据类型[长度]; 3. 数据名 = new 数据类型[] {元素1,元素2,元素3,。。。。} 4. 例⼦
public class Demo01 { public static void main(String[] args) { String[] names = {"吕布","赵云","典韦","关羽","张飞"}; String[] name1 = new String[]{"吕布","赵云","典韦","关羽","张飞"}; String[] name2; name2 = new String[]{"吕布","赵云","典韦","关羽","张飞"}; String[] name3; name3 = new String[5]; name3[0] = "吕布"; System.out.println(name3[0]); } }5. [] 表⽰是⼀个数组。 6. new关键字:创建数组时使⽤的,数组本⾝是⼀个引⽤数据类型,所以需要使⽤new创建⼀个数组对象。 7. [长度] 数组的长度,表⽰这个数组容器中,可以存放多少个元素。 长度⼀旦指定不能修改 8. 索引:每个存储到数组中的元素,都会⾃动拥有⼀个编号,这个编号从0开始,称为数组索引(index) 9. 索引范围[0,数组的长度-1] 10. 数组长度,每个数组都有⼀个长度,是固定的,java中给了数组的⼀个属性,可以获取数组的长度,数组名.length, 执⾏后可以得到数组的长度,是⼀个int类型的结果1. 数组的最⼤索引数,数组名.length-1 11. 数组遍历 1. 就是把数组中的每⼀个元素都获取出来,这就是数组遍历 2.
for (int i = 0; i < scores.length; i++) { System.out.println(scores[i]); }3. 练习:在前边的基础之上,求出总成绩,最⾼成绩,最低成绩,平均成绩
import java.util.Scanner; public class Demo01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int sum = 0, max = 0, min = 100; double avg; int[] scores = new int[5]; for (int i = 0; i < 5; i++) { System.out.print("请输入第" + (i + 1) + "个学生的java成绩:"); scores[i] = scanner.nextInt(); } scanner.close(); for (int j = 0; j < scores.length; j++) { System.out.println(scores[j]); sum += scores[j]; if (max < scores[j]) { max = scores[j]; } if (min > scores[j]) { min = scores[j]; } } avg = sum / scores.length; System.out.println("总成绩:" + sum + ",最高成绩" + max + ",最低成绩" + min + ",平均成绩" + avg); } }12. 内存相关 1. ⽅法区 保存类的⼀些信息,常量,静态变量 2. 堆 保存的对象,如 数组对象, new创建的,都保存在堆内存中 3. 栈 1. java执⾏过程中,局部变量都会在⾥边,对象的引⽤,⽅法的执⾏,执⾏完后会⾃动释放(先进后出,后进先出),压栈,出栈 13. 数组引⽤数据类型 1. 两个数组同⼀个引⽤
public class Demo01 { public static void main(String[] args) { int[] num1 = new int[]{1, 2, 3, 4, 5}; int[] num2 = num1; System.out.println(num2); num2[0] =99; System.out.println(num1[0]); System.out.println(num2[0]); } }14. 练习 1. 有两个数组,把两个数组合并 1. {1,2,3,4,5} 2. {7,8,9} 3. {1,2,3,4,5,7,8,9}
public class Demo01 { public static void main(String[] args) { int[] num1 = new int[]{1, 2, 3, 4, 5}; int[] num2 = new int[]{6,7,8,9}; int[] num3 = new int[num1.length+num2.length]; for (int i = 1; i < num1.length; i++) { num3[i] = num1[i]; } for (int i = 0; i < num2.length; i++) { num3[i+num1.length] = num2[i]; } for (int i = 0; i < num3.length; i++) { System.out.print(num3[i] + " "); } } }
标签:String,int,length,数组,scores,new From: https://www.cnblogs.com/hsk991213/p/17658057.html