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: ...
随机推荐
- 使用msbuild.exe绕过应用程序白名单(多种方法)
一.MSbuild.exe简介 Microsoft Build Engine是一个用于构建应用程序的平台.此引擎也被称为msbuild,它为项目文件提供一个XML模式,该模式控制构建平台如何处理和 ...
- 洛谷 3379 最近公共祖先(LCA 倍增)
洛谷 3379 最近公共祖先(LCA 倍增) 题意分析 裸的板子题,但是注意这题n上限50w,我用的边表,所以要开到100w才能过,一开始re了两发,发现这个问题了. 代码总览 #include &l ...
- Idea的Maven使用
使用SSM(Spring,SpringMVC和Mybatis) 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johns ...
- Android 通知之 Notification
Notifications | Android Developershttp://developer.android.com/guide/topics/ui/notifiers/notificatio ...
- Discuz!论坛基本搭建
Crossday Discuz! Board(简称 Discuz!)是北京康盛新创科技有限责任公司推出的一套通用的社区论坛软件系统 一.LAMP环境搭建 参考地址:http://www.cnblogs ...
- UIScrollView的contentSize与contentOffset
UIScrollView为了显示多于一个屏幕的内容或者超过你能放在内存中的内容. Scroll View为你处理缩小放大手势,UIScrollView实现了这些手势,并且替你处理对于它们的探测和回应. ...
- JS中的getter与setter
一.什么是getter和setter getter 是一种获得属性值的方法,setter是一种设置属性值的方法 getter负责查询值,它不带任何参数,setter则负责设置键值,值是以参数的形式传递 ...
- 2015/11/4用Python写游戏,pygame入门(4):获取鼠标的位置及运动
按昨天的说法,今天将开始做一个简单的游戏了. 目标是拷贝微信的飞机大战,当然拷贝完以后大家就具备自己添加不同内容的能力了. 首先是要拿到一些图片素材,熟悉使用图像处理软件和绘画的人可以自己制作,并没有 ...
- js检测上传文件大小
前言: 项目中经常用到需要上传文件.照片等功能,同时需要限制所上传文件的大小.很多插件都会采用后台请求验证,前端Js校验比较少.本篇介绍一个前端JS便捷判断上传文件大小的方法. 代码很简单,关键就是怎 ...
- [转载]PayPal为什么从Java迁移到Node.js,性能提高一倍,文件代码减少44%
http://ourjs.com/detail/52a914f0127c763203000008 大家都知道PayPal是另一家迁移到Node.js平台的大型公司,Jeff Harrell的这篇博文 ...