day06作业
一.方法
1.方法是完成特定功能的代码块。
修饰符 返回值类型 方法类型(参数类型 参数名1,参数类型 参数名2,...){
方法体语句;
return返回值;
}
修饰符:目前就用public static。
返回值类型:就是功能结果的数据类型。
方法名:符合命名规则即可。方便调用。
参数:
*形式参数:就是方法定义的,用于接收实际参数的。
*实际参数:就是实际参与运算的。
参数类型:就是参数的数据类型
参数名:就是变量名
方法体语句:就是完成功能的代码
return:结束方法的
返回值:就是功能的结果,由return带给调用者;返回值是什么类型,返回值类型就是该类型
2.有具体返回值
a.单独调用,一般来说没有意义,不推荐。
b.输出调用,但是不够好。因为我们可能需要针对结果进行进一步的操作。
c.赋值调用,推荐方案。
无具体返回值类型
a.单独调用
b.输出调用(错误)
c.赋值调用(错误)
3.
import java.util.Scanner;
class FunctionSum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个数");
int a = sc.nextInt();
System.out.println("请输入第二个数");
int b = sc.nextInt();
int s = add(a,b);
System.out.println(s);
}
public static int add(int a, int b){
return a + b;
}
}
import java.util.Scanner;
class FunctionCompare {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个数:");
int x = sc.nextInt();
System.out.println("请输入第二个数:");
int y = sc.nextInt();
boolean b = isEquals(x,y);
System.out.println(b);
}
public static boolean isEquals(int a, int b){
return a == b;
}
}
import java.util.Scanner;
class Test1_Method {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int x = sc.nextInt();
System.out.println("请输入第二个整数:");
int y = sc.nextInt();
int m = getMax(x,y);
System.out.println("max = " + m);
boolean b = isEquals(x,y);
System.out.println(b);
}
public static int getMax(int a,int b){
return(a > b)? a : b;
}
}
import java.util.Scanner;
class Test2_Method {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入行数:");
int m = sc.nextInt();
System.out.println("请输入列数:");
int n = sc.nextInt();
printRectangle(m,n);
}
public static void printRectangle(int a,int b){
for (int i = 1;i <= a ;i++ ) {
for (int j = 1;j <= b ;j++ ) {
System.out.print("* ");
}
System.out.println();
}
return;
}
}
import java.util.Scanner;
class FunctionMultiplication {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入n:");
int n = sc.nextInt();
multiplication(n);
}
public static void multiplication(int n){
for (int i = 1;i <= n ;i++ ) {
for (int j = 1;j <= i ;j++ ) {
System.out.print(j + "*" + i + "=" +i*j + "\t");
}
System.out.println();
}
}
}
4.在同一个类中,方法名相同,参数列表不同。与返回值类型无关。
import java.util.Scanner;
class Test_Overload {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int x = sc.nextInt();
System.out.println("请输入第二个整数:");
int y = sc.nextInt();
boolean b1 = isEquals(x,y);
System.out.println(b1);
System.out.println("请输入第一个小数:");
double m = sc.nextDouble();
System.out.println("请输入第二个小数:");
double n = sc.nextDouble();
boolean b2 = isEquals(m,n);
System.out.println(b2);
}
public static boolean isEquals(int a,int b){
return a == b;
}
public static boolean isEquals(double a,double b){
return a == b;
}
}



三.数组
1.数组是存储同一种数据类型多个元素的集合。也可以看成一个容器。
数组既可以存储基本数据类型,也可以存储引用数据类型。
2.数据类型[] 数组名 = new 数据类型[数组的长度];
数据类型[] 数组名 = {元素1,元素2,...}
3.ArrayIndexOutOfBoundsException:数组索引越界异常
NullPointerException:空指针异常
4.
class Test4_Array {
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
print(arr);
}
public static void print(int[] arr){
for (int i = 0;i <= arr.length ;i++ ) {
System.out.print(arr[i] + " ");
}
}
}
class Test5_Array {
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int m1 = getMax(arr);
System.out.println(m1);
int m2 = getMin(arr);
System.out.println(m2);
}
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 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;
}
}
class Test6_Array {
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
reverseArray(arr);
print(arr);
}
public static void reverseArray(int[] arr){
for (int i = 0;i < arr.length/2 ;i++ ) {
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
}
public static void print(int[] arr){
for (int i = 0 ;i < arr.length ;i++ ) {
System.out.print(arr[i] + " ");
}
}
}
import java.util.Scanner;
class Test7_Array {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个1~7之间的整数:");
int i = sc.nextInt();
char week = getWeek(i);
System.out.println("星期" + week);
}
public static char getWeek(int m){
char[] arr = {' ','一','二','三','四','五','六','日'};
return arr[m];
}
}
class Test2_Array {
public static void main(String[] args) {
int[] arr = {11,22,33,44,55};
int index = getIndex(arr,11);
System.out.println(index);
}
public static int getIndex(int[] arr,int value){
for (int i = 0;i < arr.length ;i++ ) {
if (arr[i] == value) {
return i;
}
}
return -1;
}
}
class Test8_Array {
public static void main(String[] args) {
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
print(arr);
}
public static void print(int[] arr){
for (int i = 0;i < arr.length ;i++ ) {
for (int j = 0;j < arr[i].length ;j++ ) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
class Test9_Array {
public static void main(String[] args) {
int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
int sum = 0;
for (int i = 0;i < arr.length ;i++ ) {
for (int j = 0;j < arr[i].length ;j++ ) {
sum = sum + arr[i][j];
}
}
System.out.println(sum);
}
}
7.基本数据类型的值传递,不改变原值,因为方法调用后就会弹栈,而局部变量随之消失
引用数据类型的值传递,改变原值,因为即使方法调用后弹栈,但是堆内存中的数组对象还在,可以通过地址继续访问。
day06作业的更多相关文章
- python day06 作业答案
1. count=1 while count<11: fen=input('请第{}个评委打分' .format( count)) if int(fen) >5 and int(fen) ...
- day06作业---字典循环
'''1.1使⽤循环打印以下效果: ***************''' for a in range(1,6): print(a*'*') '''1.2: ***** **** *** ** * ' ...
- day06 作业
猜年龄游戏 ''' 1. 给定年龄,用户可以猜三次年龄 2. 年龄猜对,让用户选择两次奖励 3. 用户选择两次奖励后可以退出 ''' import random age = random.randin ...
- python 作业
Linux day01 计算机硬件知识整理 作业要求:整理博客,内容如下 编程语言的作用及与操作系统和硬件的关系 应用程序->操作系统->硬件 cpu->内存->磁盘 cpu与 ...
- DSB
Linux day01 计算机硬件知识整理 作业要求:整理博客,内容如下 编程语言的作用及与操作系统和硬件的关系 应用程序->操作系统->硬件 cpu->内存->磁盘 cpu与 ...
- 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】
点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...
- day05对象和类
day06作业: 第一题:分析以下需求,并用代码实现 手机类Phone 属性: 品牌brand 价格price 行为: 打电话call() 发短信sendMessage() 玩游戏playGame() ...
- day06 再谈编码 and 作业讲解
1. 小数据池,(其他语言又叫常量池) id() 查看变量的内存地址 is和== is 判断内存地址是否一致 == 判断内容是否一致 小数据池的作用: 为了快速的创建字符串对象, 可以减少内存的浪费 ...
- python开发学习-day06(模块拾忆、面向对象)
s12-20160130-day06 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
随机推荐
- 洛谷P3676 小清新数据结构题 【树剖 + BIT】
题目链接 洛谷P3676 题解 我们先维护\(1\)为根的答案,再考虑换根 一开始的答案可以\(O(n)\)计算出来 考虑修改,记\(s[u]\)表示\(u\)为根的子树的权值和 当\(u\)节点产生 ...
- 解题:NOI 2014 购票
题面 观察一下部分分,我们发现链上的部分分是这样一个DP: $dp[i]=min(dp[i],dp[j]+dis(i,j)*p[i]+q[i])(dis(i,j)<=lim[i]\&\& ...
- 左值与右值,左值引用与右值引用(C++11)
右值引用是解决语义支持提出的 这篇文章要介绍的内容和标题一致,关于C++ 11中的这几个特性网上介绍的文章很多,看了一些之后想把几个比较关键的点总结记录一下,文章比较长.给出了很多代码示例,都是编译运 ...
- Laravel 项目集合
1. CMS LaraCMS https://github.com/wanglelecc/laracms 2. 电商 3. 点播 MeEdu https://github.com/Qs ...
- Docker入门与应用系列(二)镜像管理
1.1 什么是镜像 简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统. 1.2 镜像从哪里来 Docker Hub是由Docker公司负责维护的公共注册中心,包含大量的容 ...
- timeshift 安装使用说明
https://blog.csdn.net/hunter___/article/details/79751379 这里介绍一个可视化的备份软件:Timeshift,它不只能备份你的个人文件夹或应用程序 ...
- Java基础-DButils工具类(QueryRunner)详解
Java基础-DButils工具类(QueryRunner)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC ...
- Interval GCD
题目描述 给定一个长度为N的数列A,以及M条指令 (N≤5*10^5, M<=10^5),每条指令可能是以下两种之一:“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d ...
- 权限 mock location
1.集成环信的时候,该权限报错: mock location权限是是“允许程序创建模拟位置”,主要是提供用于测试.打包的时候并不需要,所以解决办法分两步: 1.声明tools 2.添加忽略:
- 网络爬虫框架Heritrix中Modules的各项说明
1)Select Crawl Scope:Crawl Scope 用于配置当前应该在什么范围内抓取网页链接.例如选择 BroadScope 则表示当前的抓取范围不受限制,选择 HostScope 则表 ...