1.什么是数组,你自己如何理解数组的?
能放很多相同类型数据的一个容器
2.:数组的概念?有什么特点?
数组是用来存储同一数据类型多个元素的容器。
1)存储的元素必须是同一数据类型,比如存储的所有元素都是int类型。
2)数组长度是固定的。
3:数组的定义格式?
动态:
数据类型[] 数组名称 = new 数据类型[数组长度];
数据类型 数组名称[] = new数据类型[数组长度];
静态:
数据类型[] 数组名称 = new 数据类型[数组长度];
数据类型 数组名称[] = new数据类型[数组长度];
简化格式:
数据类型[] 数组名称 = {元素1,元素2,元素3...};
数据类型 数组名称[] = {元素1,元素2,元素3....};
4.Java中的内存分配有哪些?请分别说明存储什么内容在里面
栈内存:在函数中定义的基本类型变量和对象的引用变量
堆内存:用来存放由new创建的对象和数组以及对象的实例变量
5. 下列数组的声明有哪些是对的?错的应该怎么修改?
A. int[] a;
B. int a[] = new int[3];
C. int[] a;
a = {1,2,3,4,5}; × int[] a = {1,2,3,4,5}
D. int[] a = new int[3]{1,2,3}; × int[] a = new int[]{1,2,3}
6. 给定一个数组,输出数组中的最大值和最小值(键盘录入一个数组,5个元素)
最大:
public static void main(String[] args) {
int []arr ={59,15,63,44,24,82,96};
int max = arr[0];
for(int x=1;x<arr.length;x++){
if(arr[x]>max)
max=arr[x];
}
}
最小:
int min = arr[0];
for (int x=1;x<arr.length;x++){
if(arr[x]<min)
min=arr[x];
}
7.给定一个数组,把这个数组中所有元素顺序进行逆序。(静态初始化)
int []arr ={59,15,63,44,24,82,96};
for(int start = 0 ,end = arr.length-1 ; start<end ; start++,end --){
int temp = arr[start] ;
arr[start] = arr[end] ;
arr[end] = temp ;
}
8.模拟登录功能,键盘录入用户名和密码String类型都是,和已知(你自己定义)存在的用户名和密码进行对比
(使用String的equals(String other)),不断录入用户名和密码,直到一致后,提示"登录成功",否则登录失败,请重新输入!
import java.util.Scanner;
class ZuoYe{
public static void main(String[] args) {
String username = "admin";
String password = "admin";
Scanner sc = new Scanner(System.in);
System.out.println("请输入用户名:");
String name = sc.nextLine();
System.out.println("请输入密码:");
String pwd = sc.nextLine();
if(username.equals(name) && password.equals(pwd)) {
System.out.println("登录成功");
}else {
System.out.println("登录失败");
}
}
}
9.int[] arr = {10,55,30,24,17} ;
查询30这个元素第一次在数组中出现的索引,查询元素使用功能完成!
class ZuoYe{
public static void main(String[] args) {
int[] arr = {10,55,30,24,17};
int index = getIndex(arr,30);
System.out.println("30在数组中第一次出现的索引是:"+index);
}
public static int getIndex(int[] arr,int value) {
for(int x=0; x<arr.length; x++) {
if(arr[x] == value) {
return x;
}
}
return -1;
}
}
10.写一个方法,接受一个整数n,输出1+2+3+...+n 的和
import java.util.Scanner;
class ZuoYe{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个数:");
int n = sc.nextInt();
int result = add(n);
System.out.println(result);
}
public static int add(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += i;
}
return sum;
}
}
11.写一个方法,计算两点(x1, y1)和(x2, y2)之间的距离
12.键盘录入6个不同的数据(无序),创建一个数组,然后将数组中的元素冒泡排序(使用方法完成!)
class ZuoYe{
public static void main(String[] args){
int[] arr = {99,88,77,66,55,44} ;
printArray(arr) ;
}
public static void printArray(int[] array){
for(int x = 0 ; x < array.length-1 ; x ++){
for(int y = 0 ; y < array.length-1-x ; y ++){
if(array[y] > array[y+1]){
int temp = array[y] ;
array[y] = array[y+1] ;
array[y+1] = temp ;
}
}
}
}
}
13. 放假期间预习下面向对象,资料会在群里,提前看看