「java按比例」java按比例分配
本篇文章给大家谈谈java按比例,以及java按比例分配对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、怎么让java图形用户界面的组件随着窗口大小按比例调整!
- 2、java将图片按比例缩小
- 3、JAVA怎么计算百分比?
- 4、java按比例缩小图片重绘会丢失数据?
- 5、java 按比例分配后得到小数,将小数取整,但不改变总数
- 6、求助:java中怎么实现按比例随机分配
怎么让java图形用户界面的组件随着窗口大小按比例调整!
package test;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Test {
public static void main(String[] args) {
Frame f = new Frame("测试");
f.setLayout(new BorderLayout(30, 5));
f.add(new Button("上"), BorderLayout.NORTH);
f.add(new Button("下"), BorderLayout.SOUTH);
f.add(new Button("左"), BorderLayout.EAST);
f.add(new Button("右"), BorderLayout.WEST);
f.add(new Button("中"));
f.addWindowListener(new WindowAdapter(){
@Override public void windowClosing(WindowEvent e){
System.exit(0);
}
});
f.pack();
f.setVisible(true);
}
}
看看这个是不是你想要的效果,
java将图片按比例缩小
Image srcImg = ImageIO.read(new FileInputStream(fnSrc) );//取源图
int width = 600; //假设要缩小到600点像素
int height = srcImg.getHeight(null)*600/srcImg.getWidth(null);//按比例,将高度缩减
System.out.println("Width: "+srcImg.getWidth(null));// 这几行是调试用
System.out.println("Height: "+srcImg.getHeight(null));
System.out.println("Width2: "+width);
System.out.println("Height2: "+height);
Image smallImg =srcImg.getScaledInstance(width, height, Image.SCALE_SMOOTH);//缩小
JAVA怎么计算百分比?
int num1 = 7;
int num2 = 9;
// 创建一个数值格式化对象
NumberFormat numberFormat = NumberFormat.getInstance();
// 设置精确到小数点后2位
public String getPercent(int x,int total){
String result="";//接受百分比的值
double x_double=x*1.0;
double tempresult=x/total;
numberFormat.setMaximumFractionDigits(2);
String result = numberFormat.format((float) num1 / (float) num2 * 100);
System.out.println("num1和num2的百分比为:" + result + "%");
比较运算符
比较运算符属于二元运算符,用于程序中的变量之间,变量和自变量之间以及其他类型的信息之间的比较。比较运算符的运算结果是boolean型。当运算符对应的关系成立时,运算的结果为true,否则为false。比较运算符共有6个,通常作为判断的依据用于条件语句中。
Java解释器在没有生成任何对象的情况下,以main作为入口来执行程序。每个类中可以定义多个方法,但main方法只能有一个。关键字public表示访问权限,指明所有的类都可以使用这一方法。
以上内容参考:百度百科-Java
java按比例缩小图片重绘会丢失数据?
会
Java对图片进行缩小和放大,都是针对像素点操作,可以把像素理解成一个矩阵:
如,一张2*4的图片,如下,一个字母代表一个像素
A A B B
C C D D
那么放大,好理解,如放大三倍,以前的一个像素就变成了3*3的一个小像素矩阵
AAA AAA BBB BBB
AAA AAA BBB BBB
AAA AAA BBB BBB
CCC CCC DDD DDD
CCC CCC DDD DDD
CCC CCC DDD DDD
这样图片做整数倍操作就不会失针,但是做非整数倍,就存在问题,如放大1.5 * 1.5倍
上面的
A A B B
C C D D
就不好弄了,但是Java会自动采取莫种方式对像素进行处理,【可能】变成下面的矩阵:
A A A B B B
A C A D B D
C C C D D D
这么说理解了吗? 同理Java缩小图片时也存在此问题
Java在处理大图片时,失针效果不明显,因为会自动计算像素之间个过渡色,做为填充
但是在处理小图片时,失针效果就非常明显了
注:其实图片处理软件一样,你可以自己画个2*4的图片,采用不同工具测试
亲,如果回答满意,请及时采纳,谢谢!
java 按比例分配后得到小数,将小数取整,但不改变总数
别想着这样分呗,你分成3块,第一份取i=1,第二份取j=1,第三份取sum=10,k = sum-(i+j)
然后第二次就取,i=1 ,j=2,sum=10,k = sum-(i+j),懂意思吧
求助:java中怎么实现按比例随机分配
比如有十个糖果,按照2:3:5的比例分配给三个小孩
public class luck {
public static ListString candy = new ArrayListString();
public static ListString child1 = new ArrayListString();
public static ListString child2 = new ArrayListString();
public static ListString child3 = new ArrayListString();
// 2:3:5
public static void main(String[] args) {
candy.add("糖果1");
candy.add("糖果2");
candy.add("糖果3");
candy.add("糖果4");
candy.add("糖果5");
candy.add("糖果6");
candy.add("糖果7");
candy.add("糖果8");
candy.add("糖果9");
candy.add("糖果10");
int count = 10;
for (int i = 0; i 2; i++) {
int math = (int) (Math.random() * count);
child1.add(candy.get(math));
candy.remove(math);
count--;
}
for (int i = 0; i 3; i++) {
int math = (int) (Math.random() * count);
child2.add(candy.get(math));
candy.remove(math);
count--;
}
for (int i = 0; i 5; i++) {
int math = (int) (Math.random() * count);
child3.add(candy.get(math));
candy.remove(math);
count--;
}
System.out.println("child1的糖:");
for (int i = 0; i child1.size(); i++) {
System.out.println(child1.get(i));
}
System.out.println("child2的糖:");
for (int i = 0; i child2.size(); i++) {
System.out.println(child2.get(i));
}
System.out.println("child3的糖:");
for (int i = 0; i child3.size(); i++) {
System.out.println(child3.get(i));
}
}
}
输出结果:
child1的糖:
糖果6
糖果1
child2的糖:
糖果7
糖果2
糖果8
child3的糖:
糖果4
糖果3
糖果10
糖果5
糖果9
关于java按比例和java按比例分配的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-28,除非注明,否则均为
原创文章,转载请注明出处。