1.定义长度为4 的字符数组 默认值为 '.' 'N' 'e' 't',显示该数组的 每一个元素:X[0] X[1] X[2] X[3],然后将值再次赋值为 'J' 'a' 'v' 'a',再显示
public class test01 {
public static void main(String[] args) {
long1();
}
public static void long1() {
char[] ss = new char[]{'.', 'N', 'e', 'y'};
for (int i = 0; i < 4; i++) {
System.out.print(ss[i] + "\t");
}
System.out.println();
char[] ss1 = new char[]{'j', 'a', 'v', 'a'};
for (int i = 0; i < 4; i++) {
ss[i] = ss1[i];
System.out.print(ss[i]+"\t");
}
}
}
2.定义长度为4 的整型数组
给每个元素分别赋值一个数字
将第一个元素与最后一个元素相加 并显示结果
将第二个元素与第三个元素相加 并显示结果
注意索引不可越界
public class test02 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int [] aa=new int[4];
Random random=new Random();
for (int i = 0; i <4 ; i++) {
int a=random.nextInt(100);
aa[i]=a;
System.out.print(aa[i]+"\t");
}
System.out.println();
int s=aa[0]+aa[aa.length-1];
System.out.println("s = " + s);
int s1=aa[1]+aa[2];
System.out.println("s1 = " + s1);
}
}
3.定义长度为5的字符串数组 分别赋值为:apple orange banana pear tomato 使用循环显示数组的每个元素
public class test03 {
public static void main(String[] args) {
ss();
}
public static void ss() {
String [] str=new String[]{"apple","orange","banana","tomato"};
for (int i = 0; i <str.length ; i++) {
System.out.print(str[i]+"\t");
}
}
}
4.定义长度为4的字符串数组 循环将4个输入的字符串赋值给数组每个元素 再循环显示该数组
import java.util.Scanner;
public class test04 {
public static void main(String[] args) {
ss();
}
public static void ss() {
String[] str = new String[4];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < str.length; i++) {
System.out.print("请输入一个字符串:");
String a = sc.next();
str[i] = a;
}
System.out.print("你依次输入的字符串是:");
for (int i = 0; i < str.length; i++) {
System.out.print(str[i] + "\t");
}
}
}
5.定义长度为10 的整型数组 循环将10个0-100的随机数赋值给该数组并显示 并显示奇数或偶数,并在最后统计奇数的个数与偶数的个数,0的个数
import java.util.Random;
public class test05 {
public static void main(String[] args) {
sss();
}
public static void sss() {
int a[] = new int[10];
int j = 0;
int k = 0;
int c=0;
Random random = new Random();
for (int i = 0; i < a.length; i++) {
int s = random.nextInt(100);
a[i] = s;
if (a[i] % 2 == 0) {
System.out.println(a[i] + "为偶数");
j++;
} else {
System.out.println(a[i] + "为奇数");
k++;
}
}
for (int i = 0; i <a.length ; i++) {
if (a[i]==0){
c++;
}
}
System.out.println("共有偶数: " + j);
System.out.println("共有奇数: " + k);
System.out.println("共有0的个数: " + c);
}
}
6、声明一个int型的数组,循环接收8个学生的成绩,计算这8个学生的总分及平均分。
import java.util.Scanner;
public class test06 {
public static void main(String[] args) {
sss();
}
public static void sss() {
int a[] = new int[8];
int sum = 0;
double avg = 0;
Scanner sc = new Scanner(System.in);
for (int i = 0; i < a.length; i++) {
System.out.print("请输入第" + (i+1) + "个学生的成绩:");
int b = sc.nextInt();
a[i] = b;
sum = sum + a[i];
avg = sum / a.length;
}
System.out.println("这八个学生的总分为:" + sum);
System.out.println("这八个学生的平均分为:" + avg);
}
}
7、声明一个int型的数组,循环随机生成13个1到13之间随机数放入到此数组中去,再循环输出。
import java.util.Random;
public class test07 {
public static void main(String[] args) {
sss();
}
//声明一个int型的数组,循环随机生成13个1到13之间随机数放入到此数组中去,再循环输出。
public static void sss() {
int a[] = new int[13];
Random random = new Random();
for (int i = 0; i < a.length; i++) {
int b = random.nextInt(13) + 1;
a[i] = b;
System.out.print(a[i] + "\t");
}
}
}
8、声明一个char型的数组,在此数组的单元格中分别放入"我爱你"三个字符,然后使用循环将它反序输出。如"你爱我"。(从最后一个元素循环到第一个元素)
public class test08 {
public static void main(String[] args) {
ss();
}
//声明一个char型的数组,在此数组的单元格中分别放入"我爱你"三个字符,
// 然后使用循环将它反序输出。如"你爱我"。(从最后一个元素循环到第一个元素)
public static void ss() {
char a[] = new char[]{'我', '爱', '你'};
for (int i = a.length - 1; i >= 0; i--) {
System.out.print(a[i]);
}
}
}
9、循环输入5个学生的成绩放入到一个整形的数组中,然后计算这5个学生的平均分,最后输出格式如下:
学生1 学生2 学生3 学生4 学生5
80 90 95 82 96
平均分是:??
import java.util.Scanner;
public class test09 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int a[] = new int[5];
int sum = 0;
int avg = 0;
Scanner sc = new Scanner(System.in);
for (int i = 0; i < a.length; i++) {
System.out.print("请输入第" + (i + 1) + "个学生的成绩:");
int b = sc.nextInt();
a[i] = b;
sum = sum + a[i];
avg = sum / a.length;
}
for (int i = 0; i <a.length ; i++) {
System.out.print("学生" + (i +1)+ "\t");
}
System.out.println();
for (int i = 0; i <a.length ; i++) {
System.out.print(a[i]+"\t\t");
}
System.out.println();
System.out.println("平均分是:"+avg);
}
}
10、将十进制整数35转换为二进制数。
实现思路:将除二取余得到的第一个数字存储在数组中第一个元素,
第二次得到的余数存储在数组中第二个元素,依次类推,最后反向输出获得的数字即可。
public class test10 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int a[] = new int[8];
int b = 35;
for (int i = 0; i < a.length; i++) {
a[i] = b % 2;
b = b / 2;
}
for (int i = a.length - 1; i >= 0; i--) {
System.out.print(a[i]);
}
}
}
11、现在有如下一个数组:
int oldArr[]={1,4,9,8,0,2,0,0,8,2};
要求将以上数组中的0项去掉,将不为0的值存入一个新的数,值为1-10之间随机数
例如:生成新的数组为
int newArr[]={1,4,9,8,3,2,1,8,8,2};
import java.util.Random;
public class test11 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int oldArr[] = new int[]{1, 4, 9, 8, 0, 2, 0, 0, 8, 2};
int newArr[] = new int[10];
Random random = new Random();
for (int i = 0; i < oldArr.length; i++) {
if (oldArr[i] == 0) {
oldArr[i] = random.nextInt(10) + 1;
newArr[i] = oldArr[i];
} else {
newArr[i] = oldArr[i];
}
System.out.print(newArr[i]);
}
}
}
12、现在有如下一个数组:
int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
要求将以上数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组为:
int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5};
import java.util.Random;
public class test12 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int oldArr[] = new int[]{1, 3, 4, 5, 0, 0, 6, 6, 0, 5, 4, 7, 6, 7, 0, 5};
int newArr[] = new int[12];
int j=0;
for (int i = 0; i < oldArr.length; i++) {
if (oldArr[i] == 0) {
continue;
} else {
newArr[j] = oldArr[i];
j++;
}
}
for (int i = 0; i <newArr.length ; i++) {
System.out.print(newArr[i]);
}
}
}
13、定义一个数组,存储1,2,3,4,5,遍历数组得到每一个元素,求数组里面所有的数据和
int[] arr = {1,2,3,4,5};
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum = sum + arr[i];
}
System.out.println(sum);
14、统计个数
需求:定义一个数组,存储1,2,3,4,5,6,7,8,9,10
遍历数组得到每一个元素,统计数组里面一共有多少个能被3整除的数字
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int count = 0;
for (int i = 0; i < arr.length; i++) {
if(arr[i] % 3 == 0){
count++;
}
}
System.out.println("数组中能被3整除的数字有" + count + "个");
15、变化数据
定义一个数组,存储1,2,3,4,5,6,7,8,9,10
遍历数组得到每一个元素。
如果是奇数,则将当前数字扩大两倍
如果是偶数,则将当前数字变成二分之一
int[] arr = {1,2,3,4,5,6,7,8,9,10};
for (int i = 0; i < arr.length; i++) {
if(arr[i] % 2 == 0){
arr[i] = arr[i] / 2;
}else{
arr[i] = arr[i] * 2;
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
16、定义数组求最大值:33,5,22,44,5,求数组中的最大值
public class test01 {
public static void main(String[] args) {
ss();
}
public static void ss() {
int arr[] = new int[]{33, 5, 22, 44, 55};
int a[]=new int[arr.length];
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
a[i]=max;
max = max > arr[i] ? max : arr[i];
}
System.out.println(max);
}
}
17、打乱数据,定义一个数组,存入1~5。要求打乱数组中所有数据的顺序
//1.定义数组存储1~5
int[] arr = {1, 2, 3, 4, 5};
//2.循环遍历数组,从0索引开始打乱数据的顺序
Random r = new Random();
for (int i = 0; i < arr.length; i++) {
//生成一个随机索引
int randomIndex = r.nextInt(arr.length);
//拿着随机索引指向的元素 跟 i 指向的元素进行交换
int temp = arr[i];
arr[i] = arr[randomIndex];
arr[randomIndex] = temp;
}
//当循环结束之后,那么数组中所有的数据已经打乱顺序了
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}