小编Mat*_*t B的帖子

68
推荐指数
4
解决办法
14万
查看次数

大写的第一个字符

可能重复:
如何在字符串中的每个第一个字母大写?
最有效的方法是使String小写的第一个字符?

我想将字符串的第一个字母转换为大写字母.我正在尝试使用JavaDocs中描述的replaceFirst(),但我不知道正则表达式的含义.

这是我到目前为止尝试的代码:

public static String cap1stChar(String userIdea)
{
    String betterIdea, userIdeaUC;
    char char1;
    userIdeaUC = userIdea.toUpperCase();
    char1 = userIdeaUC.charAt(0);
    betterIdea = userIdea.replaceFirst(char1); 
    return betterIdea;
}//end cap1stChar
Run Code Online (Sandbox Code Playgroud)

编译器错误是参数列表的长度不同.我认为这是因为缺少正则表达式,但我不知道究竟是什么.

java string

33
推荐指数
3
解决办法
11万
查看次数

在JPasswordField中显示密码,而不是将0设置为echo char

如何显示JPasswordField的文本而不是将0设置为echo char?

Java Docs说:

将值设置为0表示您希望在键入文本时看到该文本,类似于标准JTextField的行为.

以下结果导致不兼容的类型错误

outField.setEchoChar(0);
Run Code Online (Sandbox Code Playgroud)

wheras

outField.setEchoChar('0');
Run Code Online (Sandbox Code Playgroud)

只需将0设置为echo char(每个数字显示0).

在JTextField上使用JPasswordField的原因是我想更改echo char并使用其他方法隐藏密码.

谢谢!

java swing jpasswordfield

3
推荐指数
1
解决办法
5949
查看次数

如何在EDT上运行JOptionPane?

还有空白问题JOptionPane.基于SO和Java Docs的研究,这显然与不使用它有关EDT.我的问题是EDT它及其方法究竟是如何适用的JOptionPane?例如,终端错误输出清楚地表明JOptionPane下面没有运行EDT.特别缺少什么,以及如何Runnable适应?

import javax.swing.*;
public class PaneDemo
{
public static void main(String[] args)
{
    final String[] TEXT ={
            //message
            "Hello, World!",
            //title
            "Greeting"};//end TEXT
    showMyPane(TEXT);
}//end main
public static void showMyPane(final String[] TEXT)
{
    JOptionPane.showMessageDialog(null, TEXT[0], TEXT[1], 
        JOptionPane.INFORMATION_MESSAGE);
    if(!SwingUtilities.isEventDispatchThread())
    {
        System.err.println("Err: GUI failed to use EDT.");
    }//end if(!SwingUtilities.isEventDispatchThread())
}//end showMyPane
}//end class PaneDemo
Run Code Online (Sandbox Code Playgroud)

答案建议添加invokeLater.然而,这似乎并没有在BlueJ中表现得很好.

BlueJ截图

isEventDispatchThread()仍然在终端中返回错误.这只是因为它现在在错误的位置?

java swing joptionpane event-dispatch-thread

3
推荐指数
1
解决办法
1715
查看次数