900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Java语言基础(环境搭建 语法 变量 类型转换 运算符 控制语句 数组)

Java语言基础(环境搭建 语法 变量 类型转换 运算符 控制语句 数组)

时间:2021-08-20 06:53:18

相关推荐

Java语言基础(环境搭建 语法 变量 类型转换 运算符 控制语句 数组)

目录

1 Java环境搭建1.1 JDK下载1.2 JDK安装1.3 JDK的安装目录1.4 常用DOS命令1.5 Path环境变量配置1.6 IDEA编辑器2 基本语法2.1 注释2.2 关键字2.3 常量2.4 数据类型2.4.1 数据类型2.4.2 内存占用和取值范围2.5 变量2.5.1 定义变量2.5.2 变量的注意事项2.6 标识符2.6.1 标识符定义规则2.6.2 常用命名约定(驼峰法)2.7 类型转换2.7.1 自动类型转换2.7.2 强制类型转换2.8 打印输出3 运算符3.1 算术运算符3.1.1 字符的“+”操作3.1.2 字符串的“+”操作3.2 赋值运算符3.3 自增自减运算符3.4 关系运算符3.5 逻辑运算符3.6 短路逻辑运算符3.7 三元运算符3.8 Scanner使用的基本步骤3.9 案例:三个和尚4 流程控制语句4.1 流程控制语句分类4.2 if语句4.2.1 if语句格式14.2.2 if语句格式24.2.3 if语句格式34.3 switch语句4.4 for循环语句4.4.1 案例1: 输出数据4.4.2 案例2: 求1-5数据和4.4.3 案例3: 求1-100偶数数据和4.4.4 案例4: 打印1-100的数每行10个4.4.5 案例5: 水仙花数4.4.6 案例6: 统计水仙花个数4.5 while循环语句4.6 do...while循环语句4.7 三个循环的区别4.7.1 第一4.7.2第二4.7.3死循环4.8 跳转控制语句4.9 循环嵌套4.10 Random使用步骤5 数组5.1 数组定义格式5.2 数组初始化5.2.1 动态初始化5.2.2 静态初始化5.3 数组元素访问5.4 内存分配5.5 遍历数组5.6 获取数组最值6 二维数组6.1 二维数组格式6.2 动态初始化6.3 访问元素6.4 静态初始化6.5 遍历二维数组前七章知识点案例总结1.缝七过2.不死神兔3.百钱百鸡4.数组元素求和5.数组内容相同6.查找7.反转8.评委打分8 import导包

1 Java环境搭建

1.1 JDK下载

官网:/或浏览器搜索java8download

1.2 JDK安装

傻瓜式点击下一步就行改路径安装更改JDK路径和JRE路径注意点:安装路径不要包含中文和空格,所有开发工具最好安装路径统一

1.3 JDK的安装目录

1.4 常用DOS命令

1.5 Path环境变量配置

1.右键电脑>属性>高级系统设置>高级>环境变量2.系统变量配置:点击新建,名称为JAVA_HOME,变量值为jJava安装路径,如:F:\Java3.编写Path变量:系统变量>path>编辑>新建>添加%JAVA_HOME%\bin4.验证:cmd窗口输入javac

1.6 IDEA编辑器

快速生成语句快速生成main()方法:psvm,回车快速生成输出语句:sout,回车内容辅助键Ctrl+Alt+space(内容提示,代码补全等)快捷键注释:

1.单行:选中代码Ctrl+/,再来一次,就是取消

2.多行:选中代码Ctrl+Shift+/,再来一次,就是取消格式化:Ctrl+Alt+L

2 基本语法

2.1 注释

1.单行注释

格式://注释信息

2.多行注释

格式:/*注释信息*/

3.文档注释

格式:/**注释信息*/

2.2 关键字

关键字的字母全部小写常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。

2.3 常量

2.4 数据类型

2.4.1 数据类型

基本数据类型 整数(byte、short、int、long)浮点数(float、double)字符(char)布尔(boolean) 引用数据类型 类(class)接口(interface)数组([ ])

2.4.2 内存占用和取值范围

2.5 变量

2.5.1 定义变量

数据类型+变量名=值

2.5.2 变量的注意事项

变量名不能重复变量未赋值不能使用long类型的变量定义时,为防止整数过大,值后面加Lfloat类型的变量定义时,为防止类型不兼容,值后面加F一条语句可以定义多个变量,但需要使用逗号进行分割数值不能超过变量取值范围

2.6 标识符

2.6.1 标识符定义规则

由字母、数字、下划线(_)和美元符($)组成不能以数字开口不能是关键字区分大小写不能有空格

2.6.2 常用命名约定(驼峰法)

小驼峰命名法方法变量标识符是一个单词时,首字母小写范例:name标识符由多个单词组成时,第一个单词首字母小写,其他单词首字母大写范例:firstName大驼峰命名法标识符是一个单词时,首字母大写范例:Student标识符由多个单词组成时,全部首字母大写范例:GoodStudent

2.7 类型转换

2.7.1 自动类型转换

把一个表示数据范围小的数值变量赋值给另一个表示数据范围大的变量范例:doubled = 10;

2.7.2 强制类型转换

把一个表示数据范围大的数值变量赋值给另一个表示数据范围小的变量格式:目标数据类型+变量名 = (目标数据类型)值或变量范例int k = (int)88.88

2.8 打印输出

System.out.print(打印内容) //打印后不换行

System.out.println(打印内容) //打印后换行

System.out.println() //没内容时起到换行效果

3 运算符

3.1 算术运算符

public static void main(String[] args) {int a = 6;int b = 4;System.out.println(a + b); //10System.out.println(a - b); //2System.out.println(a * b); //24System.out.println(a / b); //1System.out.println(a % b); //2//除法得到商,取余得到余数//整数相除只能得到整数,要想得到小数要有浮点数参与System.out.println(6.0 / 4); //1.5}

3.1.1 字符的“+”操作

字符进行“+”操作时,拿的是字符在计算机底层对应的数值进行操作 ‘A’ > 65‘a’ > 97‘o’ > 48 算术运算符表达式中多个基本数据类型的值的时候,整个算术运算符的类型自动提升提升规则: 1.byte类型、short类型和char类型都会提升到int类型2.整个表达式的类型自动提升到表达式中最高等级操作数同样类型

等级顺序:byte、short、char -> int -> long -> float -> double 范例:

public class Demo {public static void main(String[] args) {int i = 10;char c = '0';System.out.println(i + c); //75//char cj = i + c;//char类型会自动提升到int类型int j = i + c;System.out.println(j); //75//10.1是double类型高于int类型//int k = 10 + 10.1; double k = 10 + 10.1;}}

3.1.2 字符串的“+”操作

当 “+” 操作出现字符串时,这个 “+” 是字符串连接符,而不是算术运算符范例:

System.out.println('it'+6+66) //it666

在 “+” 操作中,如果出现字符串就是连接符,否则就是算术运算。当连续 “+” 操作时,从左到右依次执行。范例:

System.out.println(1+99+'it') //100it

3.2 赋值运算符

注意事项:扩张的赋值运算符隐含强制类型转换。

3.3 自增自减运算符

++ 和 - - 可以放变量前面也可以放变量后面单独使用时, ++ 和 - - 放变量前后结果都是一样的参与操作使用时,如果放变量后面,先拿变量参与操作,后拿变量做++或- -;

参与操作使用时,如果放变量前面,先拿变量做++或- -,后拿变量参与操作。范例:

public class Demo {public static void main(String[] args) {//单独使用int i = 10;//i++;++i;System.out.println(i); //11//参与操作使用++在后面int b = 10;int j = b++;System.out.println(b); //11System.out.println(j); //10//参与操作使用++在前面int c = 10;int k = ++c;System.out.println(c); //11System.out.println(k); //11}}

3.4 关系运算符

关系运算符的结果都是boolean类型,要么true,要么false

3.5 逻辑运算符

3.6 短路逻辑运算符

范例:

public class Demo {public static void main(String[] args) {int i = 10;int j = 20;//&& :具有短路效果,符号左边为false的时候,右边就不执行//如果符号左边为true,右边要继续执行System.out.println((i++>100) && (j++>100)); //false & false,System.out.println("i="+i); //11System.out.println("j="+j); //20}}

注意事项

1、逻辑与 &:无论左边真假,右边都要执行

2、短路与 &&:如果左边为真,右边执行;如果左边为假,右边不执行

3、逻辑或 |: 无论左边真假,右边都要执行

4、短语或 ||:如果左边为假,右边执行;如果左边为真,右边不执行

3.7 三元运算符

格式:关系表达式 ? 表达式1 :表达式2;范例:a > b ? a : b;计算规则

首先计算关系表达式的值

如果值为true表达式1的值就是运算结果;

如果值为false表达式2的值就是运算结果。范例

public class Demo {public static void main(String[] args) {int i = 10;int j = 20;//输出两个数据中的较大值int max = i > j ? i : j;System.out.println("max=" + max); //20}}

3.8 Scanner使用的基本步骤

导包的三种方式

1、手动导包:import java.util.Scanner;2、快捷键导包:创建好Scanner对象后,鼠标放在Scanner上按Alt+Enter3、自动导包:写Scanner单词创对象时,按tab补全导包

导包的步骤

1.导包

import java.util.Scanner; //导包必须在定义类上面

2.创建对象

Scanner sc = new Scanner(System.in); //只有sc是变量名可以变,其他都不可以变

3.接收数据

int i = sc.nextInt(); //i是变量名可以变,其他都不能变sc.nextInt(); //Ctrl+alt+v:补全生成左边的内容

3.9 案例:三个和尚

import java.util.Scanner;public class Demo {public static void main(String[] args) {//从键盘输出三个身高求出最高值Scanner sc = new Scanner(System.in);//键盘输入三个数值int height1 = sc.nextInt();int height2 = sc.nextInt();int height3 = sc.nextInt();int temp = (height1>height2) ? height1:height2;int max = (temp>height3) ? temp:height3;System.out.println(max);}}

4 流程控制语句

4.1 流程控制语句分类

顺序结构分支结构(if、switch)循环结构(for、while、do…while

4.2 if语句

4.2.1 if语句格式1

格式

if(关系表达式) {语句体;}

执行流程

1、首先计算关系表达式的值

2、如果关系表达式的值为true就执行语句体

3、如果关系表达式的值为false就不执行语句体

4、继续执行后面的语句内容

4.2.2 if语句格式2

格式

if(关系表达式) {语句体1;}else {语句体2;}

执行流程

1、首先计算关系表达式的值

2、如果关系表达式的值为true就执行语句体1

3、如果关系表达式的值为false就执行语句体2

4、继续执行后面的语句内容

4.2.3 if语句格式3

格式

if(关系表达式1) {语句体1;}else if(关系表达式2){语句体2;}...else {语句体n+1;}

执行流程

1、首先计算关系表达式1的值

2、如果值为true就执行语句体1;如果值为false就计算关系表达式2的值

3、如果值为true就执行语句体2;如果值为false就计算关系表达式3的值

4、如果没有任何关系表达式值为true就执行语句体n+1范例

import java.util.Scanner;public class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入你的成绩");int score = sc.nextInt();if(score == 100){System.out.println("满分");}else if(score >= 90) {System.out.println("优秀");}else if(score >= 80) {System.out.println("良好");}else if(score >= 70) {System.out.println("中等");}else if(score >= 60) {System.out.println("及格");}else {System.out.println("不及格");}}}

4.3 switch语句

格式

switch(表达式) {case 值1:语句体1;break;case 值2:语句体2;break;...default:语句体n+1;break; //最后一个可以省略

格式说明表达式:取值为byte、short、int、char,JDK5以后可以是枚举,JDK7以后可以是Stringcase:后面跟的是要跟表达式比较的值break:表示中断结束的意思,用来结束switch语句default:表示所有情况都不匹配的时候,就执行该处内容,和if语句中的else相似执行流程

1、首先计算表达式的值

2、以此和case后面的值进行比较,如果有对应值,就会执行相应语句,在执行过程中,遇到break就会结束

3、如果所有的case的值和表达式的值都不匹配,就会执行default里面的语句体,然后程序结束注意事项:在switch语句中,如果case控制的语句后面不写break,将会出现穿透现象,在不判断下一个case的情况下,向下运行,直到遇到break,或者整体程序结束案例:初夏秋冬(case穿透

import java.util.Scanner;public class Demo {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个月份");int month = sc.nextInt();switch(month) {//case穿透case 1:case 2:case 12:System.out.println("冬季");break;case 3:case 4:case 5:System.out.println("春季");break;case 6:case 7:case 8:System.out.println("夏季");break;case 9:case 10:case 11:System.out.println("秋季");break;default:System.out.println("你输入的月份有误");}}}

4.4 for循环语句

格式

for(初始化语句;条件判断语句;条件控制语句){循环体语句;}

流程图

执行流程

1、执行初始化语句

2、执行条件判断语句,且看结果是true还是false

如果是false,循环结束;如果是true,继续执行

3、执行循环体语句

4、执行条件控制语句

5、返回到2继续

4.4.1 案例1: 输出数据

public class Demo {public static void main(String[] args) {// 输出1-5for(int i=1;i<=5;i++) {System.out.print(i+" "); //1 2 3 4 5}// 输出5-1for(int i=5;i>0;i--) {System.out.print(i + " "); //5 4 3 2 1}}}

4.4.2 案例2: 求1-5数据和

public class Demo {public static void main(String[] args) {int sum = 0;for(int i=1;i<=5;i++) {sum += i;}System.out.println(sum); //15}}

4.4.3 案例3: 求1-100偶数数据和

public class Demo {public static void main(String[] args) {int sum = 0;for(int i=1;i<=100;i++) {//判断i是否为偶数if(i%2==0){sum += i;}}System.out.println(sum);}}

4.4.4 案例4: 打印1-100的数每行10个

public class Demo {public static void main(String[] args) {//打印1-100,每行10个int a = 0;for(int i=0;i<100;i++){a++;System.out.print(i+" ");if(a % 10 == 0){//10代表每行10个,可以换为所需个数System.out.println(); //10个后换行}}}}

4.4.5 案例5: 水仙花数

什么是水仙花数?

1、水仙花数是一个三位数

111 333 456 999 530

2、水仙花数的个位、十位、百位的数字立方和等于原数

怎么获取个位、十位、百位上的数

1、个位数

3711就是原始数字对10进行取余的运算结果;371% 10 =1

2、十位数

371;371通过除以10,可以将7移动到个位上去(整数);371 / 10 = 37

37;37对10进行取余可以得到最后一位的值7; 37% 10 =7

3、百位数

371 ;3就是原始数字除以100的结果(整除);371 /100 =3

4、思考:任意数字的指定位置上的数值如何求?

123456789 ; 先10000得到12345;再对10取余得到5

public class Demo {public static void main(String[] args) {for(int i=100;i<=999;i++) {int a = i % 10; //个位int b = i / 10 % 10; //十位int c = i / 100 ; //百位if(a*a*a + b*b*b + c*c*c == i) {System.out.println("水仙花数:"+i); //有153、370、371、407}}}}

4.4.6 案例6: 统计水仙花个数

public class Demo {public static void main(String[] args) {int count = 0; //存放判断水仙花的次数for(int i=100;i<=999;i++) {int a = i % 10; //个位int b = i / 10 % 10; //十位int c = i / 100 ; //百位if(a*a*a + b*b*b + c*c*c == i) {count++;}}System.out.print("水仙花共有"+count+"个"); //4个}}

4.5 while循环语句

用法:用来描述未知次数循环格式

初始化语句;while(条件判断语句) {循环体语句;//比如:输出内容条件控制语句;}

执行流程

1、执行初始化语句;

2、执行条件判断语句,看其结果为true还是false

如果是false,循环结束;如果是true,继续执行

3、执行循环体语句

4、执行条件控制语句

5、回到2继续案例:珠穆朗玛峰

public class Demo {public static void main(String[] args) {//需求:世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米)//假如我有一张足够大的纸,它的厚度是0.1毫米。//请问,我折叠多少次,可以折成珠穆朗玛峰的高度?//1.定义计数器变量,用于统计折叠的次数int count = 0;//2.定义纸张厚度变量double paper = 0.1;//3.定义珠峰高度变量int zf = 8844430;//不知道循环次数,更适合使用whilewhile(paper<=zf) {//循环过程中每次纸张堆叠,厚度加倍paper *= 2;//在循环中累加次数count++;}//循环结束后打印System.out.println(count); //27}}

4.6 do…while循环语句

格式

初始化语句;do{循环体语句;//比如:输出内容条件控制语句;}while(条件判断语句);

执行流程

1、执行初始化语句

2、执行循环体语句

3、执行条件控制语句

4、执行条件判断语句,看其结果为true还是false

如果是false,循环结束;如果是true,继续执行

5、回到2继续

4.7 三个循环的区别

4.7.1 第一

do…while:先输出一次再进行判断(最少输出一次)for、while:先判断再输出

4.7.2第二

for循环结束后变量不能使用while循环结束后还可以使用(打印变量次数)

4.7.3死循环

for语句

for(;;){System.out.println("死循环");}

while语句

while(true){System.out.println("死循环了");}

do…while语句

do{System.out.println("死循环");}while(true);

4.8 跳转控制语句

continue:用于循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次执行break:用于循环中,基于条件控制,终止循环体内容执行,结束当前整个循环范例:

public class Demo {public static void main(String[] args) {for(int i=1;i<=5;i++) {if(i%2==0) {//continue; //为偶数时跳过输出,1 3 5break; //当遇到偶数终止循环,只输出1}System.out.println(i);}}}

4.9 循环嵌套

public class Demo {public static void main(String[] args) {//九九乘法表for(int i=1;i<=9;i++) {for(int j=1;j<=i;j++) {//j<=i,当i=1时,j=1,输入一次后循环结束;i的值加1,i=2,j=1,输出两次后跳出...System.out.print(i +"*"+j + "=" + i*j +" ");}System.out.println();}}}

4.10 Random使用步骤

作用:用于产生一个随机数

步骤

1.导包:

import java.util.Random

2.创建对象:

Random r = new Random(); //r是变量名可变

3.获取随机数:

int number = r.nextInt(10); //获取数据的范围是:[0,10),包括0,不包括10//number是变量名可变,数字10可变

案例:猜数字游戏

import java.util.Scanner;import java.util.Random;public class Demo {public static void main(String[] args) {//1.生成随机数1-100Random r = new Random();int number = r.nextInt(100)+1; ////4.不确定次数用while,死循环while(true) {//2.键盘输出数字Scanner b = new Scanner(System.in);System.out.println("请输入要猜的数字:");int guessnumber = b.nextInt();//3.比较if(guessnumber>number) {System.out.println("你猜的数字"+guessnumber+"大了");}else if(guessnumber<number) {System.out.println("你猜的数字"+guessnumber+"小了");}else {System.out.println("猜对了");break;}}}}

5 数组

数组(array [əˈreɪ] )是一种用来存储多个相同类型数据的存储模型

5.1 数组定义格式

格式1(常用)

//数据类型[] 变量名;int[] arr; //定义了一个int类型的数组,数组名是arr

格式2

//数据类型 变量名[];int arr[]; //定义了一个int类型的变量,变量名是arr数组

5.2 数组初始化

5.2.1 动态初始化

初始化时只指定初始化长度,由系统为数组分配默认初始化值默认值: int:默认值0float:默认值0.0boolean:默认值falsechar:默认值是空字符引用数据类型:默认值null格式

数据类型[] 变量名 = new 数据类型[数组长度];

范例

//new:为数组申请内存空间 3:数组长度/数组中元素个数int[] arr = new int[3]; System.out.print(arr[0]) //0 系统分配的默认初始化值

5.2.2 静态初始化

初始化指定数组元素,系统会根据元素个数,计算出数组的长度格式

数据类型[] 变量名 = new 数据类型[]{数据1,数据2,数据3,.....}数据类型[] 变量名 = {数据1,数据2,数据3,....} //简化格式

范例

int[] arr = new int[]{1,2,3};System.out.println(arr[0]);int[] arr1 = {1,2,3};System.out.println(arr1[0]); //1

5.3 数组元素访问

数组变量访问方式格式:变量名数组内部保存数据访问方式格式:数组名[索引] //0、1、2、3…

int[] arr1 = {1,2,3};System.out.println(arr1); //[I@1b6d3586:内存空间地址值System.out.println(arr1[0]); //1System.out.println(arr1[1]); //2System.out.println(arr1[2]); //3

5.4 内存分配

栈内存:存储局部变量(定义在方法中的变量,如:arr,使用完毕立刻消失)堆内存:存储new出来的内容(实体、对象)(垃圾回收器空闲时回收)

5.5 遍历数组

获取数组元素个数,格式数组名.length

public class Demo {public static void main(String[] args) {int[] arr = {1,2,3,4,5};for(int i=0;i<arr.length;i++) {System.out.println(arr[i]); // 1 2 3 4 5}}}

5.6 获取数组最值

执行流程

1、假设数组中的第一个元素为最大值

2、遍历数组,获取每一个元素,准备进行比较

3、如果比较的过程,出现了比max更大的,让max记录更大的值

4、循环结束后,打印最大值

public class Demo {public static void main(String[] args) {int[] arr = {2,6,7,8,1,3,5,4,9};int max = arr[0];for(int i=1;i<arr.length;i++) {if(arr[i] > max) {max = arr[i];}}System.out.println(max); //循环结束后打印}}

6 二维数组

6.1 二维数组格式

格式一:数据类型[ ][ ] 变量名;

int[][] arr;

格式二:数据类型 变量名[][];

int arr[][];

格式三:数据类型[] 变量名[];

int[] arr[];

6.2 动态初始化

格式:数据类型[ ][ ] 变量名 = new 数据类型[m][n]; m:行n:列(每行可以存放多少数据)范例

public class Demo {public static void main(String[] args) {int[][] arr = new int[2][3];for(int[] row : arr) {for(int data : row) {System.out.printf("%d\t",data); // 0 0 0}// 0 0 0 System.out.println();}}}

6.3 访问元素

public class Demo{public static void main(String[] args){/*问题:二维数组中存储的是一维数组,那能不能存入[提前创建好的一维数组]呢?*/int[] arr1 = {11,22,33};int[] arr2 = {44,55,66};int[] arr3 = {77,88,99,100};int[][] arr = new int[3][3];arr[0] = arr1;arr[1] = arr2;arr[2] = arr3;//输出二维数组for(int[] row : arr) {for(int data : row) {System.out.printf("%d\t",data); //11 2233}//44 5566System.out.println();//77 8899 100}System.out.println(arr[1][2]); //66System.out.println(arr[2][3]); //100}}

6.4 静态初始化

格式1:格式: 数据类型[ ][ ] 变量名 = new 数据类型[ ][ ] {{元素1,元素2…},{元素1,元素2…}};

int[][] arr = new int[][]{{11,22},{33,44}};

格式2(简化格式):数据类型[][] 变量名 ={{元素1,元素2},{元素1,元素2…}};

int[][] arr = {{11,22},{33,44}};

6.5 遍历二维数组

public class Demo{/*需求:已知一个二维数组 arr = {{11,22,33},{44,55,66}}遍历该数组,取出所有元素并打印*/public static void main(String[] args){int[][] arr = {{11,22,33},{44,55,66}};// 遍历二维数组,取出里面每一个一维数组for(int i = 0;i < arr.length;i++){// 遍历一维数组,arr[i]就是每一个一维数组for(int j = 0;j < arr[i].length;j++){System.out.print(arr[i][j]+" "); //11 22 33 44 55 66}}}}

前七章知识点案例总结

1.缝七过

public class Demo {public static void main(String[] args) {//个位是7,十位是7,7的倍数过//i%10==7 i/10%10==7 i%7==0 for (int i = 1; i <= 100; i++) {if (i % 10 == 7 || i / 10 % 10 == 7 || i % 7 == 0) {System.out.print(i + " ");}}}}

2.不死神兔

public class Demo {public static void main(String[] args) {//1int[] arr = new int[20];//2arr[0] = 1;arr[1] = 1;//3for(int x=2;x< arr.length;x++) {arr[x] = arr[x-2] + arr[x-1];//arr[2] = arr[0] +arr[1];}System.out.println("第二十个月兔子个数为"+arr[19]); //6765}}

3.百钱百鸡

public class Demo {public static void main(String[] args) {//1.第1层循环,用来表示鸡公范围,x=0,x<=20for(int x=0;x<=20;x++){//2.第2层循环,表示母鸡范围for(int y=0;y<=33;y++){//3.小鸡数量int z = 100 -x -y;//4.三种鸡的总钱是否等于100if(z%3==0 && 5*x+3*y+z/3==100){System.out.println("公鸡个数:"+x+","+"母鸡个数"+y+","+"小鸡个数"+z);//公鸡个数:0,母鸡个数25,小鸡个数75//公鸡个数:4,母鸡个数18,小鸡个数78//公鸡个数:8,母鸡个数11,小鸡个数81//公鸡个数:12,母鸡个数4,小鸡个数84}}}}}

4.数组元素求和

public class Demo {public static void main(String[] args) {int[] arr = {68,27,95,88,171,996,51,210};int sum = 0;for(int i=0;i< arr.length;i++) {if(arr[i]%10!=7 && arr[i]/10%10!=7 && arr[i]%2==0){sum += arr[i];}}System.out.println(sum); //1362}}

5.数组内容相同

public class Demo {public static void main(String[] args) {int[] arr = {11, 22, 33, 44, 55, 66};//int[] arr2 = {11, 22, 33, 44, 55, 66}; //返回trueint[] arr2 = {22, 11, 33, 44, 55, 66}; //返回falseboolean a = compare(arr, arr2);System.out.println(a); }public static boolean compare(int[] arr, int[] arr2) {//比较长度if (arr.length != arr2.length) {return false;}//比较元素内容for (int i = 0; i < arr.length; i++) {if (arr[i] != arr2[i]) {return false;}}//都相同时return true;}}

6.查找

import java.util.Scanner;public class Demo {public static void main(String[] args) {int[] arr = {19,28,35,42,56};Scanner sc = new Scanner(System.in);System.out.println("请输入一个数");int number = sc.nextInt();int index = getIndex(arr,number);System.out.println("索引下标为:"+index);}public static int getIndex(int[] arr,int number) {//索引变量int index = -1;//遍历数组for(int i=0;i< arr.length;i++){if(number==arr[i]){index = i;break;}}return index;}}

7.反转

public class Demo {public static void main(String[] args) {int[] arr = {11,22,33,44,55};//初始化两个索引变量用逗号隔开for(int start=0,end=arr.length-1;start<=end;start++,end--){//反转int temp = arr[start];arr[start] = arr[end];arr[end] = temp;}for(int i=0;i< arr.length;i++) {System.out.print(arr[i]+" "); //55 44 33 22 11}}}

8.评委打分

import java.util.Scanner;public class Demo {public static void main(String[] args) {int[] arr = new int[6];Scanner sc = new Scanner(System.in);//1.键盘输入六个评委的分数for(int i=0;i< arr.length;i++) {System.out.println("请输入第"+(i+1)+"个评委打分:");arr[i] = sc.nextInt();}//printArray(arr);//2.调用getMaxint max = getMax(arr);//3.调用getMinint min = getMin(arr);//4.调用getSumint sum =getSum(arr);//5.计算平均分int avg = (sum-max-min)/arr.length-2;System.out.println("选手最终得分是:"+avg);}//获取所有元素和public static int getSum(int[] arr) {int sum = 0;for(int i=0;i< arr.length;i++) {sum += arr[i];}return sum;}//获取最小值public static int getMin(int[] arr) {int min = arr[0];for(int i=1;i< arr.length;i++) {if(arr[i] < min) {min = arr[i];}}return min;}//获取最大值public static int getMax(int[] arr) {int max = arr[0];for(int i=1;i< arr.length;i++) {if(arr[i] > max) {max = arr[i];}}return max;}//遍历数组public static void printArray(int[] arr) {System.out.print("[");for(int i=0;i< arr.length;i++) {if(i==arr.length) {System.out.print(arr[i]);}else {System.out.print(arr[i]+",");}}System.out.print("]");}}

8 import导包

格式:`import 包名;范例:`Demo类中导入Student类的方法

Student类

package Student;public class Student {public void study(){System.out.println("学习");}}

Demo类

package test;import Student.Student;public class Demo {public static void main(String[] args) {Student s = new Student();s.study(); //学习}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。