public class jh_01_为什么需要数组 {
public static void main(String[] args) {
int [] arr = new int[5];
// int a = 10;
} }

  

import java.util.Scanner;

public class jh_02_如何使用数组 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int [] arr = new int[5];
for (int i= 0; i < arr.length; i++) {
System.out.println("shuru");
arr[i] = sc.nextInt();
}
// arr[0] = 99;
// arr[1] = 98;
// arr[2] = 97;
// arr[3] = 96;
// arr[4] = 95;
// arr = null;//NullPointerException
//System.out.println(arr.length);
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);
System.out.println(arr[4]);
// System.out.println(arr[-5]);//ArrayIndexOutOfBoundsException
System.out.println("*********************");
for(int i = 0;i< 5;i++ ) {
System.out.println(arr[i]);
}
System.out.println("*********************");
for(int i = 0;i< arr.length;i++ ) {
System.out.println(arr[i]);
}
int sum =0;
for(int i = 0;i< arr.length;i++ ) {
sum += arr[i];
} String [] name= new String[5];
name[0] = "张三";
name[1] = "李四";
name[2] = "张三";
name[3] = "张三";
name[4] = "张三";
System.out.println(name[0]);
System.out.println(name[1]);
System.out.println(name[2]);
System.out.println(name[3]);
System.out.println(name[4]);
System.out.println("********************");
for (int i = 0; i < name.length; i++) {
System.out.println(name[i]);
}
System.out.println("********************");
for (int i = 0; i < 5; i++) {
System.out.println(name[i]);
} } }

  

public class jh_03_数组赋值 {
public static void main(String[] args) {
// Scanner sc = new Scanner(System.in);
// int [] arr = new int [5];
// for (int i= 0; i < arr.length; i++) {
// System.out.println("shuru");
// arr[i] = sc.nextInt();
// } int [] arr03 = new int []{1,2,3,4,5};
int [] arr02 = {1,2,3,4,5};
for (int i = 0; i < arr02.length; i++) {
if(i!=arr02.length-1 ) {
System.out.print(arr02[i]+", ");
}else {
System.out.print(arr02[i]);
}
} } }

  

public class jh_04_现场编程 {
/*
* 有一个数列:8,4,2,1,23,344,12
* 循环输出数列的值
* 求数列中所有数值的和
* 猜数游戏:从键盘中任意输入一个数据,
* 判断数列中是否包含此数
*/
public static void main(String[] args) {
int [] arr={8,4,2,1,23,344,12};
// 循环输出数列的值---迭代. 遍历.
for (int i = 0; i < arr.length; i++) {
System.out.println(i);
}
System.out.println("*******************");
// 求数列中所有数值的和
// 数据类型 元素:
for (int i : arr) {
System.out.println(i);
}
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum += arr[i];
}
System.out.println(sum);
System.out.println("*******************");
int num = 1;
boolean flag = false;
for (int i = 0; i < arr.length; i++) {
if (arr[i] == num) {
flag = true;
break;
} } if (flag) {
System.out.println("存在");
} else {
System.out.println("不存在");
} } }

  

public class jh_05_学员操作_显示商品名称2_1 {
// int [] arr={8,4,2,1,23,344,12};
// ''"" ''''gad''
public static void main(String[] args) {
String []arr = {"xiaogege","dajiejie","xiaoayi"};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
System.out.println("**********************");
for (String str : arr) {
System.out.println(str);
}
System.out.println();
double []arr01={1.75,1.73,1.79};
for (int i = 0; i < arr01.length; i++) {
System.out.println(arr01[i]);
}
System.out.println("*********************");
for (double db : arr01) {
System.out.println(db);
} } }

  

import java.util.Scanner;

public class jh_06_学员操作_购物金额结算 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 长度为五的容器,存储金额。double
double []arr = new double[5];
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入第"+ i +"个成绩");
arr[i] = sc.nextInt();
}
System.out.println("序号 \t成绩:");
// 罗列输入的数值:
for (int i = 0; i < arr.length; i++) {
System.out.println((1+i)+"\t"+arr[i]);
} } }

  

import java.util.Arrays;

public class jh_07_数组排序2_1 {
public static void main(String[] args) { // Arrays类的sort()函数: 对数组进行升序排列
// 对象名.函数名()。sc.nextInt();
// 类名.函数名(); Arrays.sort(容器名称);
int [] arr = {2,5,4,3,1,6,9,8,7};
for(int i : arr) {
System.out.print(i+", ");
}
System.out.println();
// Arrays类的sort()函数
Arrays.sort(arr);
for(int i : arr) {
System.out.print(i+", ");
}
System.out.println();
} }

  

public class jh_08_求容器最大值 {
public static void main(String[] args) {
/*
* 1:把第一个元素。arr[0]默认成最大的。---参照物。
* 2:后面的元素依次和参照物做比较。
* 3:如果后面的元素比参照物大。就把
* 后面的赋值给参照物。
*/
int [] arr = {2,5,4,3,1,6,9,8,7};
// 1:把第一个元素。默认成最大的
// int max = arr[0];
//
// for (int i = 1; i < arr.length; i++) {
// if(arr[i] > max) {
// // 把当前的元素赋值给max
// max = arr[i];
// }
// }
// System.out.println(max);
int min = arr[0]; for (int i = 1; i < arr.length; i++) {
if(arr[i] < min) {
// 把当前的元素赋值给max
min = arr[i];
}
}
System.out.println(min);
} }

  

public class jh_09_查找指定元素出现的位置 {
public static void main(String[] args) {
/*
* 查找指定元素出现的位置
* 3 --- index
* 如果不存在。就用-1表示。
*/
int []arr = {2,5,4,3,1,6,9,8,7};
int index = getIndex(arr,19);
System.out.println(index); // 指定元素
// int num = 19;
// int index = -1;
// // 1:依次取出每一个元素,并做比较
// for (int i = 0; i < arr.length; i++) {
// if(num == arr[i]) {
// index = i;// 当前i的值是不是就是index位置。
// }
// }
// System.out.println(index);
// } /*
* 1:返回值类型。int
* 2:参数列表。int[] arr,int num
*/
}
public static int getIndex(int [] arr,int num) {
for (int i = 0; i < arr.length; i++) {
if(num == arr[i]) {
return i;
}
}
return - 1; } }

  

import java.util.Scanner;

public class jh_10_学员操作求最低价格 {
private static int i; public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int [] arr = new int [4];
for (int i = 0; i < arr.length; i++) {
System.out.println("请输入值: ");
arr[i] = sc.nextInt();
}
int min = arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
System.out.println(arr[i]);
} }

  

import java.util.Arrays;
import java.util.Scanner; public class jh_11_插入算法 {
/*
* 有一组学员的成绩{99,85,82,63, 60}, 将它们按升序排列。要增加一个学员的成绩, 将它插入成绩序列,并保持升序。
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 有一组学员的成绩{99,85,82,63, 60},
int[] oldArray = { 99, 85, 82, 63, 60 };
// 将它们按升序排列。
Arrays.sort(oldArray);
// 创建一个容器,长度是原数组长度加1;
int[] newArray = new int[oldArray.length + 1];
// 数组copy 调用对应的函数,或者简单写下。
for (int i = 0; i < oldArray.length; i++) {
newArray[i] = oldArray[i];
}
// 看下效果,迭代新容器
for (int i = 0; i < newArray.length; i++) {
System.out.println(newArray[i]);
}
System.out.println("*************************"); /*
*1: 给出要插入的数值 num
*2: 找到要插入的位置。
*3: 从要插入的位置依次向后挪元素。
*4: 把num的值覆盖到index位置处
*5: 如果插入的值比容器中最大的值还大,应该插入到最后。
* 所以index的初始值默认给newArray.length-1;
*/
// 1:给出要插入的数值 num
System.out.println("给出要插入的数值:");// 77
int num = sc.nextInt();
int index = newArray.length - 1;
// 2:找到要插入的位置
for (int i = 0; i < newArray.length; i++) {
if (newArray[i] > num) {
// 记录当前位置
index = i;
break;
}
} // 3:从要插入的位置依次向后挪元素。
// arr [8]= arr [7]
// for(int i = index;i<newArray.length;i++) {
//// 倒数第一个 = 倒数第二个
// newArray[newArray.length - 1- 0] = newArray[newArray.length - 1 - 1];
//
//
//
//
// }
for (int i = newArray.length - 1; i > index; i--) {
newArray[i - 0] = newArray[i - 1];
} // 看效果
for (int i = 0; i < newArray.length; i++) {
System.out.println(newArray[i]);
}
System.out.println("************");
// 4:把num的值覆盖到index位置处
newArray[index] = num;
// 看效果
for (int i = 0; i < newArray.length; i++) {
System.out.println(newArray[i]);
} } }

  

public class jh_12_如何对变量ab的值进行交换 {
public static void main(String[] args) {
int a = 10;
int b = 8;
int temp;
temp = a;
a = b;
b = temp;
System.out.println(a);
System.out.println(b);
} }

  

public class jh_13_冒泡排序 {
public static void main(String[] args) {
/*
* 对数组中相邻的两个数进行比较,
* 把数组元素从头到尾比较一次后
* 找到最大的那个值放到数组的末尾.
*/
int[] arr = { 54, 53, 12, 32, 56, 17 };
for (int j = 0; j < arr.length-1; j++) {
for (int i = 0; i < arr.length-1-j; i++) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
}
for (int i : arr) {
System.out.println(i);
}
} }

  

public class jh_14_选择排序 {
/*
* int[] arr =
* { 54, 53, 12, 32, 56, 17 };
*/
public static void main(String[] args) {
int[] arr = { 54, 53, 12, 32, 56, 17 };
for (int i = 0; i < arr.length - 1; i++) {
for (int j = arr.length - 1; j > 0; j--) {
if (arr[j] < arr[j - 1]) {
int temp = arr[j];
arr[j] = arr[j - 1];
arr[j - 1] = temp;
}
}
}
for (int j : arr) {
System.out.println(j);
} } }

  

import java.util.Arrays;
//import java.util.Scanner; public class jh_15_二分查找 {
public static void main(String[] args) {
// Scanner sc = new Scanner(System.in);
int[] arr = { 54, 53, 12, 32, 56, 17 };
Arrays.sort(arr);
// 12,17,32,53,54,56 int num = 50; int startIndex = 0;
int endIndex = arr.length - 1; for (;;) {
int midIndex = (startIndex + endIndex) / 2;
int midValue = arr[midIndex]; if (num > midValue) {
startIndex = midIndex + 1;
} else if (num < midValue) {
endIndex = midIndex - 1;
} else {
System.out.println("找到了");
break;
}
if (startIndex > endIndex) {
System.out.println("不存在");
break;
} } } }

  

public class jh_16_二维数组的声明 {
public static void main(String[] args) {
int a;
// int [] arr;
// int arr[];
int [][] intArray;
double doubleArray[][];
String [] strArray[]; } }

  

public class jh_17_二维数组的应用场景 {
public static void main(String[] args) {
// 学生成绩表.
int [] arr = new int [3];
int [][] Array = new int[3][3]; // a[0]---
// b[1][2] // [3]表示b里面有3个一维数组
// 长度。 // {1,2,3,4,5,6}; // {{1},{4,5,6},{7,8}}; int [][] c = new int[3][5]; int [][] d = new int[3][];
d[0] = new int[3];
d[1] = new int[4];
d[2] = new int[5];
// {{1,2,3},{4,5,6,7},{1,1,1,1,1}} int [][] e = new int [3][3];
e[0][0] = 55;
e[0][1] = 55;
e[0][2] = 55; e[1][0] = 55;
e[1][1] = 55;
e[1][2] = 55; e[2][0] = 55;
e[2][1] = 55;
e[2][2] = 55; for(int i = 0;i<3;i++) {
for(int j=0;j<3;j++) {
System.out.println(e[i][j]);
}
}
System.out.println(e[0][0]); System.out.println("***************"); for (int[] is : e) {
for(int i :is) {
System.out.println(i);
}
} } }

  

public class jh_18_二维数组的应用二 {
public static void main(String[] args) {
int [] a = {1,2,3,4,5,6};
System.out.println(a.length); int [][] arr =
{{1,2,3},{4,5,6},{7,8,9}};
//每一个小容器长度。
// 先拿到小容器。arr[i]
// 在取小容器长度。arr[i].length
System.out.println(arr.length); System.out.println(arr[1].length); } }

  

public class jh_19_循环输出二维数组的内容 {
public static void main(String[] args) {
int[][] arr =
{{1,2,3},{4,5},{7,8,9}};
for(int i = 0;i<arr.length;i++) {
for(int j =0;j<arr[i].length;j++) {
System.out.println(arr[i][j]);
}
} // for( int [] i :arr) {
// for(int e :i) {
// System.out.println(e);
// }
// } /*
* 1:先取出大容器里面的每一个小容器。
* 2:再取出每一个小容器里面的元素。
*/ } }

  

import java.util.Scanner;

public class jh_20_二维数组编程练习 {
/*
* 在一个二维数组中存放了三名学生的语文和
* 数学的成绩,从键盘输入三名学生的成绩存
* 储到二维数组中,分别求语文和数学的总
* 成绩及平均分并输出。
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
/*
* 任务
* 1、定义一个三行两列的整型二维数组intArray
* 2、从键盘输入学生成绩,要求输入顺序与效果图一致。
* 3、求语文的总成绩和平均分
* 4、求数学的总成绩和平均分
*/
// 1、定义一个三行两列的整型二维数组intArray
int[][] intArray = new int[3][2]; for (int j = 0; j < intArray.length; j++) {
for (int i = 0; i < intArray[j].length; i++) {
if (i == 0) {
System.out.println("请输入第" + (j + 1) + "个学生的语文成绩");
intArray[j][i] = sc.nextInt();
} else {
System.out.println("请输入第" + (j + 1) + "个学生的数学成绩");
intArray[j][i] = sc.nextInt();
} }
} for (int[] is : intArray) {
for (int i : is) {
System.out.print(i + ", ");
}
System.out.println();
} // 求每个学生的总成绩
int chinese = 0;
int math = 0; for(int i = 0;i<intArray.length;i++) {
int sum = 0;
for(int j = 0;j<intArray[i].length;j++) {
sum += intArray[i][j];
// 判断
// if(j==0) {
// chinese += intArray[i][j];
// }else {
// math += intArray[i][j];
// }
}
System.out.println(sum);
} System.out.println(chinese);
System.out.println(math);
// intArray[0][0]
// intArray[0][1] } }

  

java8数组的更多相关文章

  1. Java8 方式解决Stream流转其他数组

    Java8 方式解决Stream流转其他数组 一. 题记:原来的List转数组用的是如下方式: example private static void listToStringArray(List l ...

  2. java8 遍历数组的几种方式

    java8 遍历数组的几种方式 2017年04月05日 09:15:46 阅读数:4640 风格色 2017-02-11 18:41 有如下一个String数组 String[] array = {& ...

  3. Java8 方法引用与构造器引用,数组引用

    package java_8; import org.junit.Test; import java.io.PrintStream; import java.util.Comparator; impo ...

  4. 数组转字符串 java8

    public static String arrayToString(int[] arr) { // 1,2,3... StringBuffer sb = new StringBuffer(); fo ...

  5. 20190922 On Java8 第二十一章 数组

    第二十一章 数组 一等对象 对象数组和基元数组在使用上是完全相同的.唯一的不同之处就是对象数组存储的是对象的引用,而基元数组则直接存储基本数据类型的值. 多维数组 Array.deepToString ...

  6. Java笔记——Java8特性之Lambda、方法引用和Streams

    Java8已经推出了好一段时间了,而掌握Java8的新特性也是必要的,如果要进行Spring开发,那么可以发现Spring的官网已经全部使用Java8来编写示例代码了,所以,不学就看不懂. 这里涉及三 ...

  7. 取两个String数组的交集

    import org.testng.annotations.Test; import java.util.HashMap; import java.util.LinkedList; import ja ...

  8. 关于Java8函数式编程你需要了解的几点

    函数式编程与面向对象的设计方法在思路和手段上都各有千秋,在这里,我将简要介绍一下函数式编程与面向对象相比的一些特点和差异. 函数作为一等公民 在理解函数作为一等公民这句话时,让我们先来看一下一种非常常 ...

  9. Java8闭包

    闭包在很多语言中都存在,例如C++,C#.闭包允许我们创建函数指针,并把它们作为参数传递,Java编程语言提供了接口的概念,接口中可以定义抽象方法,接口定义了API,并希望用户或者供应商来实现这些方法 ...

随机推荐

  1. vue开源Element UI表单设计及代码生成器

    在日常的开发工作中,表单开发是较为繁琐且重复的.本文介绍一个我自己写的,提高开发效率的小工具. 1 可视化设计器 设计器基于Element UI ,可通过点击或拖拽的方式设计基本表单, 设计器生成的代 ...

  2. VMware下Hadoop 2.4.1完全分布式集群平台安装与设置

    1 VM下Ubuntu安装和配置 1.1 安装Ubuntu系统  这个就不说了,不知道的可以去看看其他的博文.   1.2 集群配置     搭建一个由3台机器组成的集群: IP user/passw ...

  3. Deferred shading rendering path翻译

    Overview 概述 When using deferred shading, there is no limit on the number of lights that can affect a ...

  4. Promise里的代码为什么比setTimeout先执行

    当浏览器或者Node拿到一段代码时首先做的就是传递给JavaScript引擎,并且要求它去执行. 然而,执行 JavaScript 并非一锤子买卖,宿主环境当遇到一些事件时,会继续把一段代码传递给 J ...

  5. PQSQL 按照时间进行分组

    按照时间分组时一般是按照年.月.日进行分组,不会把时分秒也算进去,所以需要把时间戳提取出所需要的时间段,本质上是把时间戳格式化成对应形式的字符串,这个过程需要用to_char(timestamp, t ...

  6. python继承简介

    继承 是面向对象的三大特性之一 作用: 通过继承可以使一个类获取其它类中的属性和方法 使用方法: 在定义类时,可以在类名后的括号中指定当前类的父类(超类.基类.super) 这样子类(衍生类)就可以直 ...

  7. pip 下载源更换

    Python博大精深之处在于丰富的库,而目前最方便的下载库的方法无疑是pip.但是由于国内的网络环境导致,好多库下载是在太慢了,原因大家都懂得.. 一.临时修改 使用pip的时候加入参数 -i pip ...

  8. Tarjin + 缩点

    链接:https://www.nowcoder.com/acm/contest/81/C来源:牛客网 题目描述 给出一个 0 ≤ N ≤ 105 点数.0 ≤ M ≤ 105 边数的有向图, 输出一个 ...

  9. 《C# 爬虫 破境之道》:第二境 爬虫应用 — 第一节:HTTP协议数据采集

    首先欢迎您来到本书的第二境,本境,我们将全力打造一个实际生产环境可用的爬虫应用了.虽然只是刚开始,虽然路漫漫其修远,不过还是有点小鸡冻:P 本境打算针对几大派生类做进一步深耕,包括与应用的结合.对比它 ...

  10. C++数值计算

    1.序 (1)程序设计分两种: 1.结构化设计(面向过程)——分解算法为模块,将算法的步骤分解为模块. 2.面向对象程序设计——主要是“类”与“对象”. (2)进制的转换 1.二进制转十进制 整数部分 ...