我有一个PHP数组,我想在前面添加一个减号( - ).我认为通过使用爆炸和内爆它是可能的,但我的PHP知识是不可能实际做到的.任何帮助,将不胜感激.
基本上我想从这个:
$array = [1, 2, 3, 4, 5];
Run Code Online (Sandbox Code Playgroud)
对此:
$array = [-1, -2, -3, -4, -5];
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
在我的作业中,我们从文件中读取文本:
成为或不成为:这就是问题:
在思想中是否更加高尚受苦
然后计算每次发生的次数.我已经能够打印这个未分类的地图,然后我能够制作一个TreeMap并以自然顺序打印它(如下所示).我不知道如何以相反的顺序打印.我知道一种使用比较器的方法,但我有点生疏,所以我尽我所能.此外,我不知道如何设置比较器以将Treemap排序为相反的顺序.
这是我打印未排序和自然排序的方法:
private static void sortPrintFrequencies(Map<String,Integer> vocabulary, PrintStream output {
Iterator iterator = vocabulary.keySet().iterator();
System.out.println("Unsorted");
while (iterator.hasNext()) {
String key = iterator.next().toString();
String value = vocabulary.get(key).toString();
String times = "times.";
String appears = "appears";
System.out.printf("%35s", key + " " + appears + " " + value + " "+ times);
System.out.println();
}
System.out.println("========================================");
System.out.println("SORTED NATURALLY BY KEY");
TreeMap newVocabulary = new TreeMap(vocabulary);
Iterator iterator2 = newVocabulary.keySet().iterator();
while (iterator2.hasNext()) {
String key = iterator2.next().toString();
String value = newVocabulary.get(key).toString(); …
Run Code Online (Sandbox Code Playgroud) 在Java中,我们可以final
在基类及其子类中以及基类中的内联初始化块中初始化构造函数中的字段.但是,似乎我们无法初始化final
子类中的内联初始化程序块中的字段.此行为主要影响super
无法调用构造函数的匿名类.
abstract class MyTest {
final protected int field;
public MyTest() {
// default value
field = 0;
}
}
Run Code Online (Sandbox Code Playgroud)
MyTest anonymTest = new MyTest() {
{
// Error: The final field MyTest.field cannot be assigned
field = 3;
}
};
Run Code Online (Sandbox Code Playgroud)
有没有办法初始化final
anonymus类中的继承字段?
注释:这个问题不是关于构造函数,而是关于最终字段初始化.
起初,我们有一个JPanel
.由于其环境和背景,其宽度可以变化.它包含JLabels
垂直顺序的一些组件(例如,为简单起见).这些组件的某些内容宽度太大而无法显示:
这很有效,直到我们有很多项目.因此,我们将面板放入JScrollPane
带有HORIZONTAL_SCROLLBAR_NEVER
标志的面板中.这是我的预期结果:
但事实上其他事情发生了.不强制使用长文本的第二个标签的大小,并且面板在视口之外生长:
什么是最简单的正确解决方案?
JList
不是一个合适的解决方案.我可以使用什么regex/pattern
来查找字符串中的以下模式?
#nnnn:
Run Code Online (Sandbox Code Playgroud)
nnnn
可以是任何 4 位长数字,只要它由主题标签和冒号包围即可。
我已经尝试过下面的代码:
#nnnn:
Run Code Online (Sandbox Code Playgroud)
它确实有效,但它匹配其他字符串,如下所示:
String string = "#8226:";
if(string.matches( ".*\\d:.*" )) {
System.out.println( "Yes" );
}
Run Code Online (Sandbox Code Playgroud)
我希望它只匹配问题顶部的模式。
谁能告诉我我哪里错了?