草庐IT

java - 如何从缓冲图像中获取子图像

我们可以使用getSubimage(int,int,int,int)从BufferedImage获取子图像,但我的问题是我想通过将double值作为width和height来获得精确的子图像(矩形图像)。有没有其他选择? 最佳答案 将double值转换为int。getSubImage((int)x,(int)y,(int)width,(int)height);正如@camickr提到的,内部单元格仍将由整数像素值表示。如果每个单元格都是5个像素的正方形。第一个单元格从(0,0)开始,第二个单元格从(5,0)开始……

java - 为什么 Java Character.toUpperCase/toLowerCase 没有像 String.toUpperCase/toLowerCase 这样的 Locale 参数

我想知道为什么Character.toUpperCase/toLowerCase没有像String.toUpperCase/toLowerCase这样的Locale参数。我必须首先将可以使用任何语言的文本大写。我有2个解决方案:使用Character.toUpperCaseStringtext="stackoverflow";StringBuildersb=newStringBuilder(text);sb.setCharAt(0,Character.toUpperCase(sb.charAt(0)));//NoLocaleparameterhere.Stringout=sb.toSt

java - 为什么 List.remove 会像现在这样重载?

这两个模棱两可有历史原因吗List.remove?List.remove(int)List.remove(Object)我觉得这设计很糟糕。对于List看起来真的很困惑。编辑:似乎每个人都对此很满意。让我说清楚一点。假设我有一个List.Integeridx=Integer.valueOf(2);list.remove(idx)虽然idx是一个对象,Java编译并将删除索引2处的项目。现在如果它是List,完全相同的代码会调用具有完全不同行为的不同方法。我们先不谈泛型会发生什么。我觉得不同的行为意味着不同的名字是一个宝贵的规则,尤其是在同一个类(class)中。

java - 在 JComboBox 中显示图像

我需要在JComboBox中显示一张图片 最佳答案 只需向模型添加一个图标而不是字符串:importjava.awt.*;importjavax.swing.*;publicclassComboBoxIconextendsJFrame{JComboBoxcomboBox;publicComboBoxIcon(){Object[]items={newImageIcon("about16.gif"),newImageIcon("add16.gif"),newImageIcon("copy16.gif")};comboBox=newJCo

java - 为什么 Number 类没有像 add() 或 negate() 这样的方法?

嗯,这是一个关于Java设计的问题。为什么没有像add()这样的方法?和negate()在java.lang.Number上类,但有一些它的子类?我的意思是...没有统一性。我可以使用+或-Float上的运营商,Long和其他可自动装箱的类,我可以使用add()和negate()在BigDecimal或BigInteger(这违反了SRP)。因此,如果我们允许对Byte进行这些操作/Short/Integer/Long无论如何(使用自动装箱和运算符),为什么不添加一个abstractNumbernegate()等Number?这有什么原因吗? 最佳答案

java - 像Eclipse一样制作带有进度条的启动画面

我的主类从文件加载配置然后显示一个框架。我想制作一个像Eclipse一样带有进度条的启动画面,以便在加载文件时进度会增加,并在加载文件后启动画面消失。然后加载我的主框架。主类代码:publicstaticvoidmain(String[]args){ApplicationContextcontext=newClassPathXmlApplicationContext("classpath:/META-INF/spring/applicationContext.xml");//splashwithprogressloadtillthisfileisloadedUserDaouserDao

java - 为什么这个正则表达式在 Java 中不能像预期的那样工作?

简单的正则表达式问题(答案很可能是特定于Java的):"#Thisisacommentinafile".matches("^#")这会返回错误。据我所知,^表示它始终表示的意思,#没有特殊含义,所以我将^#翻译为“字符串开头的‘#’”。哪个应该匹配。在Perl中也是如此:perl-e"print'#Thisisacomment'=~/^#/;"打印“1”。所以我很确定答案是特定于Java的。有没有人能赐教一下?谢谢。 最佳答案 Matcher.matches()检查整个输入字符串是否与正则表达式匹配。由于您的正则表达式仅匹配第一个字

java - Eclipse可以像多个源文件夹一样有多个输出文件夹吗

我有一个Eclipse项目,它有两个源文件夹——“src”和“test”。我希望将这两个文件夹中的构建放到单独的输出文件夹中。原因是,这两个文件夹都有一个名为ServiceProviders.properties的属性文件,该文件对于代码的生产和测试运行具有不同的值。问题是,由于只有一个输出文件夹用于复制所有已编译的类,因此“test”中的属性文件不会被复制,结果我的测试代码获得了属性文件的生产版本。我想我正在尝试模拟我们在Maven中拥有不同类路径的方式(以及它们的查找顺序)。如果这不起作用,我将使用JVM属性来指定我可以在测试用例中使用的某些值。然而,这似乎不是一个优雅的解决方案。

java - 更改 Java 中的默认按钮,使它们看起来像 "Better"

我基本上是在尝试模仿默认的windowsxp简单计算器。当我在Java中更改按钮的背景颜色时,它们看起来非常扁平且“无聊”。我想让按钮看起来尽可能接近WindowsXP计算器中的按钮。这是我的与WinXp的比较图:是否有某种方法可以用来更改按钮的样式,就像您在VisualBasic中所做的那样,使按钮几乎弹出更多或看起来像WindowsXp计算器的3D。Java中的默认按钮是我正在寻找的东西,除了不是白色,更多的是渐变中的蓝色。这可能吗,还是我坚持使用丑陋的按钮? 最佳答案 尝试在main方法的开头设置系统外观:UIManager.

java - 如何在 Java 应用程序中显示图像

我想在我的Java应用程序中显示图像。我找到了一个代码来从网络服务器下载图像并将其显示在jframe中。我想用标签来显示图像或其他东西。它不应该是JFrame。这是我的代码:Imageimage=null;try{URLurl=newURL("http://www.personal.psu.edu/acr117/blogs/audrey/images/image-2.jpg");image=ImageIO.read(url);}catch(IOExceptione){}//UsealabeltodisplaytheimageJFrameframe=newJFrame();JLabell