作业 if
package Demo2.Jjava;
import java.util.Scanner;
public class zuoy {
public static void main(String[] args ) {
int mer;int max;
Scanner u =new Scanner(System.in);
int q =u.nextInt();
int p =u.nextInt();
int r =u.nextInt();
if(q>p) {
mer =q;
}else {
mer =p;
}
if(q>r) {
max=q;
}else {
max=r;
}
System.out.println(max);
}
}
作业2三元运算符
package Demo2.Jjava;
import java.util.Scanner;
public class zuoye {
public static void main(String[] args) {
int ll;
int xx;
Scanner x =new Scanner(System.in);
System.out.println("请输入第一个数");
int fer = x.nextInt();
System.out.println("请输入第二个数");
int zong = x.nextInt();
System.out.println("请输入第三个数");
int hou =x.nextInt();
ll=(fer>zong)?fer:zong;
xx=(hou>ll)?hou :ll;
System.out.println(xx);
}
}
数组作为方法参数和返回值
1数组作为方法参数
以前的方法中我们学习了方法的参数和返回值,但是使用的都是基本数据类型。那么作为引用类型的数组能否作为方法的参数进行传递呢,当然是可以的。
●数组作为方法参数传递,传递的参数是数组内存的地址。
package demo1;
public class Demo1Array {
public static void main(String[] args) {
int [] array= {10,20,30,40};//静态方法
System.out.println(array);
//调有方法,传递数组
printarray(array);
}
//数值作为参数 传递的始终是数组的地址值
public static void printarray(int[] arraytemp) {
System.out.println("arraytemp方法收到的参数是");
System.out.println(arraytemp);//接收单的是地址
for(int i =0;i<arraytemp.length;i++) {
System.out.println(arraytemp[i]);
}
}
}
2数组作为方法返回值
数组作为方法的返回值,返回的是数组的内存地址
package demo1;
public class Demo2array {
public static void main(String[] args) {
int [] result =calculate(10,20,30);
System.out.println("calculate方法接收到的参数是");
System.out.println("main方法接收到的方法值");
System.out.println(result);
System.out.println("总和"+result[0]);
System.out.println("平均值"+result[1]);
Demo1Array.printarray(result);
}
//
public static int[] calculate(int a,int b,int c) {
int sum=a+b+c;
int avg=sum/3;
int [] array =new int[2];
array[0] =sum;
array[1] =avg;
System.out.println();
return array;//返回的是数组
}
}
API的使用
package Demo2.Jjava;
//导包
import java.util.Scanner;
/*AIP
* 导包
* import 包路径.类名称
* 如果需要使用的目标类, 和当前类位于同一个包下,则可以省略导包语句、
* 默认只有 java.long 包下的内容可以不导包 其他路径下都需要导包
* 2.创建对象
*
* 3.使用成员方法
* 获取键盘输入的int数字 int num=sc.nextInt();
* 获取键盘输入的字符串 String str = sc.next();
*
* */
public class dem01Scanner {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//System.in系统
//创建对象
Scanner sc =new Scanner(System.in);
System.out.println("输入一个 数字");
int num=sc.nextInt();
System.out.println("输入的Int 数字"+num);
System.out.println("输入的字符串");
String str = sc.next();
System.out.println("输入的字符串"+str);
}
}
Scanner的使用
- 输入两个 int数字的和
package Demo2.Jjava;
import java.util.Scanner;
/*
* 题目:
* 输入两个 int数字的和;
*
*
* 思路:
* 1.既然要用到键盘输入,就要用到Scanner
* scanner 三步骤,导包、创建、使用方法
* 需要两个int数字, 应该使用 nexInt():
* 4.在得到两个数字后,直接相加
* 5.打印输入结果
*
*
*
* */
public class dem02Scanner {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Scanner n =new Scanner(System.in);
System.out.println("第一个");
int sum =n.nextInt();
System.out.println("第二个");
int nes =n.nextInt();
System.out.println("结果是"+sum+nes);
}
}
Random 产生随机数字
、
package dem03;
import java.util.Random;
/*
*
*Random 类用来产生随机数字
*使用三步骤
*1、导包
*
*2、创建对象
*
*3 使用成员方法
* 说明
* 直接int sun =ran.nextInt();
* 参数的随机数是整个int范围 有正负两种
*
* int sun1 =ran.nextInt(3);
* [0,3) 0,1,2;
*
*
**/
public class Dem01Renddom {
public static void main(String[] args) {
Random ran =new Random();
int sun =ran.nextInt();
System.out.println("无参"+sun);
int sun1 =ran.nextInt(3);
System.out.println("有参"+sun1);
System.out.println("================================");
for(int i=0;i<100;i++) {
int sun2 =ran.nextInt(10);//[0,10)---->[0,9]
System.out.println("有参"+sun2);
}
System.out.println("================================");
for(int i=0;i<100;i++) {
int sun2 =ran.nextInt(10)+1;//[0,9]----->[1,10]
System.out.println("有参"+sun2);
}
System.out.println("================================");
for(int i=0;i<100;i++) {
int sun2 =ran.nextInt(10+1);//[0,9]----->[0,11)
System.out.println("有参"+sun2);
}
}
}
* 猜数字
package dem03;
/*
* 猜数字
*
*
*
*
* */
import java.util.Random;
import java.util.Scanner;
public class dem02RanddandoGame {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Random r =new Random();
int res =r.nextInt(100)+1;//[1,100]
Scanner sc =new Scanner(System.in);
while(true) {
System.out.println("请输入你猜的数字");
int guessNum =sc.nextInt();
if(guessNum>res) {
System.out.println("太大了");
}else if(guessNum<res) {
System.out.println("太小了");
}else {
System.out.println("你输入是正确的");
break;
}
}
System.out.println("游戏结束");
}
}
重载
package dem04;
/*
* 1.为什么需要方法的重载
*
* 对于功能类似的方法来说,因为参数列表不一样,却需要记住很多不同的参数的方法 ,太麻烦了
*
* 方法的重载(Overload):多个方法的名称一样,但是参数列表却不一样
* 好处:只需要记住唯一一个方法名称,就可以实现多个功能
*
* 重载与下列因素想
* 1.参数个数不同
* 2.参数类型不同
* 3.参数顺序不同
*
* 重载与下列因素无关
* 1.与参数的名称无关
* 2.余返回值类型无关
*
*
* */
public class Demo1MethodOverload {
public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println(sum(10,20.0));
System.out.println(sum(10.0,20.0));
System.out.println(sum(10,20));
System.out.println(sum(10.0,20));
System.out.println(sum(10,20,30));
}
public static int sum(int x,int y) {
System.out.println("参数为int,int");
return x+y;
}
// public static int sum(int x,int y) {
// System.out.println("参数为int,int");
// return x+y;
//}
public static double sum(int a,double b) {
System.out.println("参数为int ,double");
return a+b; //int + double---->double+double=double;
}
/*public static int sum(int a,double b) {
System.out.println("参数为int ,double");
return int(a+b);
}
*
*
*
* */
public static double sum(double a,int b) {
System.out.println("参数为double ,int");
return a+b; //int + double---->double+double=double;
}
public static double sum(double a,double b) {
System.out.println("参数为double ,double");
return a+b;
}
public static int sum(int a,int b,int c) {
System.out.println("参数为int,int,int ");
return a+b+c;
}
}