这个是我用来总结学到的,有c语言基础,但不多。
创新互联公司主要从事成都做网站、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务沐川,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792对于本章的运算符,在c语言里面学过,所以就没有太仔细看,具体的看课本就可以啦,把课本当成字典查阅即可,不用全背下来。
在这里,逻辑运算符需要特别注意:
(与&)与 (短路与&&) 区别:短路与左边为假,则不进行右边的运算啦。
逻辑或跟短路或也类似。
选择结构语句if语句,if...else..语句的使用,switch语句的使用,记住他结尾要加一个default结束语句。
对应的有一个练习:小明可以买什么【案例2-2】
对应的练习可以在论坛找。(应为这个是写给我自己看的)
循环语句while语句,do..while语句,for语句他们之间可以互相嵌套,使用break语句,可以暂停他们,跳出离他最近的循环语句。continue语句:他结束的是本次的循环,他不跳出循环,只是停止本次循环。
到这里对应的练习:
超市购物程序设计【2-3】:
这个练习可以在网上找到答案。
为新员工分配部门【2-4】:
源代码:
import java.util.Scanner;
public class anli24 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("输入一下语言:Java,c#,asp.net,html");
System.out.println("请输入你的姓名");
Scanner bumen=new Scanner(System.in);
String a=bumen.nextLine();
System.out.println("请输入你想去的部门");
Scanner name=new Scanner(System.in);
String b=name.nextLine();
switch(b){
case "Java":
System.out.println("名字:"+a+"Java程序开发部门");
break;
case "c#":
System.out.println("名字:"+a+"c#程序开发部门");
break;
case "asp.net":
System.out.println("名字:"+a+"asp.net程序开发部门");
break;
case "html":
System.out.println("名字:"+a+"前端程序开发部门");
break;
default:
System.out.println("对不起,没有适合你的部门");
break;
}
}
}
这个案例很简单,就是通过键盘输入对应的关键字,然后使用switch语句实现匹配。
在这个案例我发现switch语句还可以使用关键字来匹配。
剪刀石头布【2-5】:
源代码:
import java.util.Scanner;
import java.util.Random;
public class shitoujiandaobu25 {
static int b=0;//记录电脑的胜利次数
static int a = 0; //你的胜利次数
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("--------石头剪刀布的游戏---------");
System.out.println("1.剪刀,2。石头,3.布");
Scanner str=new Scanner(System.in);
for(int i=0;i<5;i++) {
System.out.println("次数:"+i);
System.out.println("请输入你的出拳");
String choose=str.next();
int num=new Random().nextInt(3)+1;
if(choose.equals("剪刀")) {
if(num==1) {
System.out.println("电脑出的是剪刀");
System.out.println("这场平局");
}else if(num==2) {
System.out.println("电脑出的是石头");
System.out.println("你输啦");
b++;
}else {
System.out.println("电脑出的是布");
System.out.println("你赢啦");
a++;
}
}else if(choose.equals("石头")) {
if(num==1) {
System.out.println("电脑出的是剪刀");
System.out.println("你赢");
a++;
}else if(num==2) {
System.out.println("电脑出的是石头");
System.out.println("平");
}else {
System.out.println("电脑出的是布");
System.out.println("你输啦");
b++;
}
}else if(choose.equals("布")) {
if(num==1) {
System.out.println("电脑出的是剪刀");
System.out.println("你输");
b++;
}else if(num==2) {
System.out.println("电脑出的是石头");
System.out.println("你赢啦");
a++;
}else {
System.out.println("电脑出的是布");
System.out.println("平局");
}
}
}
int c=5-(a+b);
System.out.println("电脑赢啦"+b+"次");
System.out.println("你赢啦"+a+"次");
System.out.println("平局"+c+"次");
}
}
这个案例使用啦循环语句与选择结构语句的嵌套,电脑端的出拳是随机的,需要创造随机数:使用到random().nextint()语句,在这里,nextint括号里面的数如果为3,则重0—2中任意选择一个数。
根据题目要求,这里的随机数要取1.2.3,所以就+1.其他没有什么新奇的啦。
方法以及数组:方法就跟c语言的函数类似,它的基本格式在其他地方有,我就不介绍啦。就将他的注意点吧,比较需要注意的就是修饰符,与返回类型。后面会将修饰符的,返回类型如果是void就不用写return。
方法的重载:就是方法名可能相同,参数,或者返回类型不同,接下来看案例:
//方法重载的案例:名字相同,但是形参或者返回类型不同
public class exanple21 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum1=add(1,2);
int sum2=add(1,2,3);
double sum3=add(2.5,2.65);
System.out.println("sum1="+sum1);
System.out.println("sum2="+sum2);
System.out.println("su3="+sum3);
}
public static int add(int x,int y) {
return x+y;
}
public static double add(double x,double y) {
return x+y;
}
public static int add(int x,int y,int z) {
return x+y+z;
}
}
接下来就讲解数组:
数组的定义,以及new出数组对象,在下面的案例会有演示:
int[] arr只是声明啦数组,还需要new出数组然后设定长度。
//如何定义数组,并访问数组中的元素
public class shuzhu {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr;
arr =new int[3];
System.out.println("arr[0]="+arr[0]);
System.out.println("arr[1]="+arr[1]);
System.out.println("arr[2]="+arr[2]);
System.out.println("arr.length="+arr.length);
}
}
对数组赋值:
分为两种:
1:动态初始化:你指定啦数组的长度但是没有给他指定的值,所以系统自动根据他的类型赋值给他。
2:静态初始化:int[] arr={1,2,3};
类似这样的。
注意数组的索引:数组的索引就是根据他的下表找到对应的元素。
//通过索引的方式遍历数组
public class shuzhuchanzuo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr= {1,2,3,4,5};
for(int i=0;i
类似这样,数组的长度为:arr.length。但是数组下标重0开始的。
所以索引范围因该在:0到arr.length-1之间。
超出范围就会溢出,产生错误。后面练习会有讲到。
接下来讲解数组的常用的操作:
数组的遍历:
//通过索引的方式遍历数组
public class shuzhuchanzuo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr= {1,2,3,4,5};
for(int i=0;i
数组的排序:
这里用到冒泡排序:
//冒泡排序
public class shuzhuchaozuo {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr= {1,8,9,6,3,17,65};
System.out.print("排序前的元素排序:");
printarr(arr);
bubbleSort(arr);
System.out.print("排序后的元素");
printarr(arr);
}
//形参列表的名字,需要与for循环的数值长度名字相同
public static void printarr(int[] q) {
for(int i=0;i
冒泡排序是数据结构的内容,原文链接:https://blog.csdn.net/qq_41679818/article/details/90296399
这里讲解的比较清晰。
接下来就是二维数组:
我们可以通过案例来讲解
//统计一个公司三个销售小组当中每个小组的总销售额和整个公司的销售额
public class erweishuzhuanli30 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] arr=new int[3][];
arr[0]=new int[] {21,11};
arr[1]=new int[] {32,63,65};
arr[2]=new int[] {36,98,65,52};
int sum=0;
for(int i=0;i
他的定义方法就在案例里面,arr[0]这里表示二维数组的一维。
遍历二维数组需要使用两个for循环。
接下来就是讲解案例:
登陆注册【2-6】:
//总结今天的实验,因为粗心漏,定义啦二位数组的类型为int,赋值以及判断的时候,就出错,赋值为String类型,arr【】【】!=null也会报错
//具体的思路就是,把输入选择功能都放在while循环里面,这样就可以无线的输入使用功能。
//可以定义一个二维数组来存密码和账号,arr[10][0]保存账号,arr[10][1]保存密码。在比较账号密码是否相同时,可以用一个String变量,用equals方法来实现,使用for循环,来一个一个的比较;
import java.util.Scanner;
//简单的登录注册
public class anli26 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String[][] arr=new String[10][2];
Scanner str=new Scanner(System.in);
while(true) {
System.out.println("欢迎进入登录注册功能");
System.out.println("输入相应的编号,选择想要的功能");
System.out.println("1.登录功能/t/t2.注册功能/t/t3.查看功能4.推出系统");
int i1=str.nextInt();
switch(i1) {
case 1:
System.out.println("请输入账号");
String zhanghao=str.next();
System.out.println("请输入密码");
String mima=str.next();
for(int j=0;j
抽取幸运观众【2-7】:
import java.util.Random;
import java.util.Scanner;
//在本练习里面,遇到大的问题就是数组溢出问题,数组长度3,下表就从012.这个时候就需要注意点他。random().next()方法,也类似,参数为3,就012,不包括3.
public class anli27 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] name=new String[3];
name[0]=null;
name[1]=null;
name[2]=null;
System.out.println("------抽取幸运观众-------");
System.out.println("请输入三个观众的姓名");
Scanner str=new Scanner(System.in);
for(int i=0;i<3;i++) {
System.out.println("请输入第"+(i+1)+"个观众的姓名");
String str1=str.next();
name[i]=str1;
}
while(true) {
System.out.println("1.查看观众姓名\t\t2.选取幸运观众/t/t3.退出系统");
int str2=str.nextInt();
switch(str2) {
case 1:
System.out.println("姓名");
for(int i=0;i
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧