Java:函数,类,数组之间的运用
在我的demoe类中,我实现了以下方法:
这个类在另外一个文件,demoe.java中
public class Demoe {
//计算一个数字因子的个数
public static int getLenght(int n){
int count = 0 ;
for(int i = 1 ; i <= n / 2 ; i++)
{
if(n % i == 0)
count++ ;
}
count++;
return count ;
}
//求一个数的因子(包含1也包含自己),放入数组并返回
public static int[] getSons(int n){
int []a = new int[getLenght(n)] ;
int j = 0 ;
for(int i = 1 ; i <= n / 2 ; i++){
if(n % i == 0)
a[j++] = i ;
}
a[j] = n ;//自己也要放进去
return a ;
}
//获取两个正int类型数组中相同且最大的那个元素
public static int getTheSameMax(int []a , int [] b){
int max = 1 ; //正整数最小就是1
for(int i = 0 ; i < a.length ; i++){
for(int j = 0 ; j < b.length ; j++){
if(a[i] == b[j]){
if(max < a[i])
max = b[i] ;
break ;
}
}
}
return max ;
}
//打印数组元素
public static void PrintArray(int []a){
for(int i = 0 ; i < a.length ; i++)
System.out.println(a[i]+" ");
System.out.println();
}
}
在HelloWorld.java中调用方法实现我的程序:
public class HelloWorld {
public static void main(String[] args){
// Scanner s = new Scanner(System.in);
// System.out.println("请输入一个数字");
// int num = s.nextInt();
//数组与函数的结合
print_arr(12,18);
}
//求两个数字的最大公约数和最小公倍数(辗转相除法)
//a.分别找出两个数的公约数,并放入数组
//b.找出最大的,就是最大公约数
//c.两数想乘/最大公约数 = 最小公倍数
public static void print_arr(int a , int b){
//得到a的公约数
int [] x1 = Demoe.getSons(a);
Demoe.PrintArray(x1);
//得到b的公约数
int [] x2 = Demoe.getSons(b);
Demoe.PrintArray(x2);
//找出相同且最大的数是最大公约数
int max = Demoe.getTheSameMax(x1, x2);
//最小公倍数
int min = a * b /max ;
System.out.println(a+","+b+"的最大公约数是"+"最小公倍数是"+min);
}
}
Java:函数,类,数组之间的运用的更多相关文章
- java使用类数组 报错Exception in thread "main" java.lang.NullPointerException
源代码如下: Point[] points=new Point[n];//Point是一个类 for(int i=0;i<n;i++) { System.out.print("请输入x ...
- C++和Java函数传递数组参数比较
如果我想实现函数参数传递数组的业务需求,在Java中很容易实现,如下所示.因为Java有.length方法,可以获取数组的长度. public class Test { public static v ...
- java集合与数组之间转换
数组转换为集合 采用java中集合自带的asList()方法就可以完成转换了 String[] array = new String[] {"zhu", "wen&quo ...
- Java List与数组之间的转换
http://blog.csdn.net/kingzone_2008/article/details/8444678
- java基础基础总结----- 关键字、标识符、注释、常量和变量、运算符、语句、函数、数组(三)
Java语言基础组成:关键字.标识符.注释.常量和变量.运算符.语句.函数.数组 一.标识符 标识符是在程序中自定义的一些名称,由大小写字母[a-zA-Z],数字[0-9],下划线[ _ ],特殊字符 ...
- Java中Arrays数组工具类的使用全解
本文几乎涵盖了所有的Arrays工具类(基于Java 11)的方法以及使用用例,一站式带你了解Arrays类的用法,希望对大家有帮助. 码字不易,三连支持一下吧 Arrays数组工具类 方法一览表 快 ...
- JAVA中list,set,数组之间的转换详解
JAVA的list,set,数组之间的转换,主要是使用Apache Jakarta Commons Collections,具体的方法如下:import org.apache.commons.coll ...
- Java 集合 集合与数组之间的转换
Java 集合 集合与数组之间的转换 @author ixenos 数组转集合 Arrays.asList(T... a) 先给结论:用 Arrays.asList(T... a) 将数组转换成集合 ...
- 第二十三节:Java语言基础-详细讲解函数与数组
函数 函数在Java中称为方法,在其他语言中可能称为函数,函数,方法就是定义在类中具有特定功能的程序.函数,在Java中可称为方法. 函数的格式: 修饰符 返回值类型 函数名(参数类型 参数1, 参数 ...
- java中 列表,集合,数组之间的转换
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...
随机推荐
- 初识RabbitMQ系列之二:下载安装
一:Erlang安装 因为RabbitMQ 是Erlang语言开发的,所以首先要装上Erlang的环境 1)下载Erlang 下载官网:http://www.erlang.org/downloa ...
- 聊聊jstack的工作原理
实现一个jstack 在聊Jstack得工作原理前呢,不如让我们先写一个简单的jstack玩玩.不用怕,很简单的,就几行代码的事,看: public class MyJstack { public s ...
- CentOS 7安装Python3.5,并与Python2.7兼容并存
CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装.1.安装python3.5可能使用的依赖1 yum install openss ...
- Docker常见仓库Ubuntu
Ubuntu 基本信息 Ubuntu 是流行的 Linux 发行版,其自带软件版本往往较新一些. 该仓库提供了 Ubuntu从12.04 ~ 14.10 各个版本的镜像. 使用方法 默认会启动一个最小 ...
- Android源码解析——Toast
简介 Toast是一种向用户快速展示少量信息的视图.当它显示时,它会浮在整个应用层的上面,并且不会获取到焦点.它的设计思想是能够向用户展示些信息,但又能尽量不显得唐突.本篇我们来研读一下Toast的源 ...
- 拦截器(Interceptor)中的invocation.invoke()
关于在Struts2的自定义的验证拦截器(Interceptor)中的invocation.invoke()是什么意思? package com.xjtu.interceptor; import co ...
- 基于AOP的iOS用户操作引导框架设计
背景 有一种现象,App设计者觉得理所当然的操作方式,却常常被用户所忽视,为了防止这种现象发生,就要为App设计一个帮助,一种低成本的方案是将帮助文档写成HTML然后展示给用户,这样的方式常常不能带来 ...
- 自定义支持多行显示的RadioGroup
自定义支持多行显示的RadioGroup 原生的RadioGroup继承自LinearLayout,即只能支持一横排或者一竖排的排列显示RadioButton 现在改写RadioGroup,使它支持多 ...
- UILabel 调整行间距
/* 调整行间距 */ + (void)adjustLineSpacingOfLabel:(UILabel *)label to:(CGFloat)lineSpacing { NSString *te ...
- markdown绘图插件----mermaid简介
作者:黄永刚 mermaid简介 当撰写文档的时候,对于流程图的生成大多使用Visio等繁重的工具,没有一种轻便的工具能够画图从而简化文档的编写,就像markdown那样. mermaid解决这个痛点 ...