java基础——参数的应用
命令行传递参数(少用)
有时候,你希望运行一个程序时,在传递给它信息。这个时候,要靠 传递命令行
参数 给main()函数实现。
package com.dong.method;
public class Demo03 {
public static void main(String[] args) {
//args.length 数组长度
for (int i =0;i<args.length;i++) {
System.out.println("args["+ i +"]"+ args[i]);
}
}
}
在用命令行执行时,必须找到报的路径:
在com的上一级目中,执行命令行:
java com.dong.method.Demo03
可变参数(不定向参数)
在JDK1.5之后,支持传递同类型的可变参数给一个方法
在方法声明中,在指定参数类型后加一个省略号(...)
一个方法中,只能指定一个可变参数,它必须是方法的最后一个参数,任何普通的参数都必须在他之前声明。
public class Demo04 {
public static void main(String[] args) {
printMax(23,34,45,45.2,65.3);
printMax(23,23.3);
}
// 有static可以直接调用,否则:
// Demo04 demo04 = new Demo04();
// demo04.printMax();
public static void printMax(double... numbers){
if (numbers.length == 0){
System.out.println("no numbers passed");
return;
}
double result = numbers[0];
// 排序
for (int i = 1; i < numbers.length; i++) {
if (numbers[i]>result){
result = numbers[i];
}
}
System.out.println(" The max Value is:" + result);
}
}
递归
A方法调用A方法自己。就是自己调用自己。
作用:1. 复杂问题简单化,就是将一个复杂的问题转化为一个与原问题相似的规模较小的问题来求解,只需要少量的程序就能解决复杂的计算,
递归部分包括两个部分:
递归头:什么时候不调用自己方法。如果没有头,将陷入死循环。(结束条件)
递归体:什么时候需要调用自己方法
public class Demo06 {
public static void main(String[] args) {
Demo06 demo06 = new Demo06();
int n = demo06.f(10);
System.out.println(n);
}
//计算5!
public int f(int i){
if (i == 1){
return 1;
}else{
return i*f(i-1);
}
}
}
java基础——参数的应用的更多相关文章
- 067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数
067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数 本文知识点:数组作为方法参数 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
- java基础:所有参数皆是按值参数
c#中对于参数的传递,有二种处理方式,默认情况下:值类型的参数,按值传递(即:方法体内的参数是原值的副本):引用类型的参数,"加ref关键字后“,按引用传递(即:方法体内的参数,是对象的指针 ...
- java基础-java与c#的可变参数
正文 可变参数,必须最为参数的最后一个参数:可变参数只能有一个: c#可变参数例子: class Program { static void Main(string[] args) { T ...
- [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html 谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...
- 【JAVA面试题系列一】面试题总汇--JAVA基础部分
JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...
- java基础练习 字符串,控制流,日历,日期等
1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...
- Java基础知识【上】(转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- 微冷的雨Java基础学习手记(一)
使用Java理解程序逻辑 之凌波微步 船舶停靠在港湾是很安全的,但这不是造船的目的 北大青鸟五道口原玉明老师出品 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识点时,要 ...
随机推荐
- Python基础之:Python中的类
目录 简介 作用域和命名空间 class 类对象 类的实例 实例对象的属性 方法对象 类变量和实例变量 继承 私有变量 迭代器 生成器 简介 class是面向对象编程的一个非常重要的概念,python ...
- 清明节特辑 |记忆存储、声音还原、性格模仿……AI可以让人类永生吗?
摘要:如果能用AI "复活"逝去的亲人 你愿意吗? 清明节,很少有人会去特地想这样一个问题:我们为什么要给过世的人修墓,然后每年固定的时间去扫墓?当农耕文化的色彩褪去,清明节的祭祀 ...
- Macbook 安装kali linux 双系统 2020.3 超详细
博主折腾了一星期这东西,到现在都还有些坑没解决(最后面会讲).不过最起码系统装上了,可以用了,看到这桌面惊艳了,再点下左上角表示人间值得. 其实我是装了windos 10.macos 和kali三系统 ...
- 学会使用 Mysql show processlist 排查问题
mysql show full processlist 查看当前线程处理情况 事发现场 每次执行看到的结果应该都有变化,因为是实时的,所以我定义为:"事发现场",每次执行就相当于现 ...
- flexbox(弹性盒布局模型),以及适用场景
一.是什么 Flexible Box 简称 flex,意为"弹性布局",可以简便.完整.响应式地实现各种页面布局 采用Flex布局的元素,称为flex容器container 它的所 ...
- 【Java并发】1. Java线程内存模型JMM及volatile相关知识
Java招聘知识合集:https://www.cnblogs.com/spzmmd/tag/Java招聘知识合集/ 该系列用于汇集Java招聘需要的知识点 JMM 并发编程的三大特性:可见性(vola ...
- 构建一个Flowable命令行应用
官网链接 [(https://flowable.com/open-source/docs/bpmn/ch02-GettingStarted/#building-a-command-line-appli ...
- synchronized锁由浅入深解析
一:几种锁的概念 1.1 自旋锁 自旋锁,当一个线程去获取锁时,如果发现锁已经被其他线程获取,就一直循环等待,然后不断的判断是否能够获取到锁,一直到获取到锁后才会退出循环. 1.2 乐观锁 乐观锁,是 ...
- Day16_98_IO_一边读一边写
一边读一边写 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutp ...
- 实现spaCy实体标注模型
命名实体识别是指对现实世界中某个对象的名称的识别.与词性标注一样,是自然语言处理的技术基础之一.它的作用主要是通过模型识别出文本中需要的实体,也可以推导出实体之间的关系(实体消歧). 本文介绍的是运用 ...