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: ...
随机推荐
- hdu6057 Kanade's convolution 【FWT】
题目链接 hdu6057 题意 给出序列\(A[0...2^{m} - 1]\)和\(B[0...2^{m} - 1]\),求所有 \[C[k] = \sum\limits_{i \; and \; ...
- 解题:CF983A Finite or not
题面 一个$b$进制最简分数是有限循环小数当且仅当其分母没有与$b$不同的质因子,小学数奥内容水过 #include<cstdio> #include<cstring> #in ...
- OS X 安装pyspider
pyspider安装的过程中,需要安装pycurl.有几个坑 一.首先遇到权限的问题 因为/Library目录是root权限,所以非root用户对该目录的读写经常会遇到权限问题,但是不宜切换成root ...
- Service Fabric Failover Manager
作者:潘罡 (Van Pan)@ Microsoft 什么是Failover Manager 我们回到Service Fabric系统架构图. Failover Manager是Reliability ...
- R kernel for Jupyter Notebook 支持r
1/2) Installing via supplied binary packages(default on Windows + Mac OS X) You can install all pack ...
- python使用数组作为索引遍历数组
python使用数组作为索引遍历数组 觉得有用的话,欢迎一起讨论相互学习~Follow Me python使用数组作为索引遍历数组 import numpy as np a=np.arange(0,5 ...
- python---协程理解
推文:python---基础知识回顾(七)迭代器和生成器 推文:Python协程深入理解(本文转载于该文章) 从语法上来看,协程和生成器类似,都是定义体中包含yield关键字的函数.yield在协程中 ...
- PHP数组的遍历
对于012345...这样的数组可以用for进行遍历 $arr=array('a','b','c','d','e'); for($key=0;$key<count($arr);$key++){ ...
- bzoj千题计划150:bzoj2738: 矩阵乘法
http://www.lydsy.com/JudgeOnline/problem.php?id=2738 整体二分 二维树状数组累积 #include<cstdio> #include&l ...
- TPL概要
ReaderWriterLockSlim.读写锁,允许多个线程同时获取读锁,但同一时间只允许一个线程获得写锁,因此也称作共享-独占锁.只有等到对象被写入锁占用的时候,才会阻塞 Barrier .它允许 ...