小编Tim*_*Tim的帖子

为什么要使用getter和setter/accessors?

使用getter和setter的优点是什么 - 只能获取和设置 - 而不是简单地使用公共字段来存储这些变量?

如果getter和setter做的不仅仅是简单的get/set,我可以非常快地解决这个问题,但我并不是100%清楚如何:

public String foo;
Run Code Online (Sandbox Code Playgroud)

更糟糕的是:

private String foo;
public void setFoo(String foo) { this.foo = foo; }
public String getFoo() { return foo; }
Run Code Online (Sandbox Code Playgroud)

而前者需要很少的样板代码.

java oop getter setter abstraction

1472
推荐指数
26
解决办法
37万
查看次数

Android Studio中"无法解析符号R"

在我引用的所有类中的每个实例中R.id.something,它R都是红色的,并且表示"无法解析符号R".此外,每次有R.layout.something红色下划线并说"无法解析方法setContentView(?)".该项目总是很好.一直看到这一点很烦人.我在这里已经阅读了许多关于类似的东西的其他问题,但大部分涉及从Eclipse导入项目.我正在使用我认为最新版本的Android Studio,该项目是使用Android Studio创建的,并且没有任何"无法解决R"问题.如果有人知道,我想知道是什么原因造成的.

android r.java-file android-studio

703
推荐指数
30
解决办法
108万
查看次数

如何在Android按钮上以编程方式设置drawableLeft?

我正在动态创建按钮.我首先使用XML设置它们,我正在尝试使用下面的XML并使其编程.

<Button
    android:id="@+id/buttonIdDoesntMatter"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:text="buttonName"
    android:drawableLeft="@drawable/imageWillChange"
    android:onClick="listener"
    android:layout_width="fill_parent">
</Button>
Run Code Online (Sandbox Code Playgroud)

这就是我到目前为止所拥有的.除了可绘制之外,我可以做任何事情.

linear = (LinearLayout) findViewById(R.id.LinearView);
Button button = new Button(this);
button.setText("Button");
button.setOnClickListener(listener);
button.setLayoutParams(
    new LayoutParams(
        android.view.ViewGroup.LayoutParams.FILL_PARENT,         
        android.view.ViewGroup.LayoutParams.WRAP_CONTENT
    )
);      

linear.addView(button);
Run Code Online (Sandbox Code Playgroud)

java android android-layout android-2.2-froyo

407
推荐指数
8
解决办法
24万
查看次数

git:致命:我不处理协议'http'

我从网页上复制并粘贴了一个git clone命令:https://fedorahosted.org/ibus-typing-booster/

我懂了:

user@host> git clone ??http://git.fedorahosted.org/git/ibus-typing-booster.git

Cloning into 'ibus-typing-booster'...
fatal: I don't handle protocol '??http'
Run Code Online (Sandbox Code Playgroud)

git whitespace clone

299
推荐指数
8
解决办法
19万
查看次数

正则表达式,用于查找包含在两个字符之间的字符串,同时排除分隔符

我需要从字符串中提取一组包含在两个分隔符之间的字符,而不返回分隔符本身.

一个简单的例子应该是有用的:

目标:提取方括号之间的子字符串,而不返回括号本身.

基本字符串:This is a test string [more or less]

如果我使用以下reg.恩.

\[.*?\]

比赛是[more or less].我只需要more or less(没有括号).

有可能吗?

regex

267
推荐指数
9
解决办法
41万
查看次数

246
推荐指数
8
解决办法
17万
查看次数

在java中以相反的顺序遍历列表

我正在迁移一段代码以利用泛型.这样做的一个论点是for循环比跟踪索引或使用显式迭代器更清晰.

在大约一半的情况下,列表(ArrayList)通过今天使用索引以相反的顺序迭代.

有人可以建议一种更清洁的方式(因为我不喜欢indexed for loop使用集合时),虽然它确实有用吗?

 for (int i = nodes.size() - 1; i >= 0; i--) {
    final Node each = (Node) nodes.get(i);
    ...
 }
Run Code Online (Sandbox Code Playgroud)

注意:我无法在JDK之外添加任何新的依赖项.

java collections

241
推荐指数
10
解决办法
22万
查看次数

如何更改操作栏上的文本

目前它只显示应用程序的名称,我希望它显示自定义的内容,并在我的应用程序中为每个屏幕显示不同的内容.

例如:我的主屏幕可以在操作栏中显示"page1",而应用切换到的另一个活动可以在该屏幕操作栏中显示"page2".

android android-actionbar

227
推荐指数
7
解决办法
40万
查看次数

Android - 以编程方式设置TextView TextStyle?

有没有办法以编程方式设置textStyle属性TextView?似乎没有一种setTextStyle()方法.

要清楚,我不是在谈论View/Widget样式!我在谈论以下内容:

<TextView
  android:id="@+id/my_text"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:text="Hello World"
  android:textStyle="bold" />
Run Code Online (Sandbox Code Playgroud)

java android textview

212
推荐指数
8
解决办法
22万
查看次数

在Java 8接口方法中不允许"synchronized"的原因是什么?

在Java 8中,我可以轻松地写:

interface Interface1 {
    default void method1() {
        synchronized (this) {
            // Something
        }
    }

    static void method2() {
        synchronized (Interface1.class) {
            // Something
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我将获得完全同步语义,我也可以在类中使用.但是,我不能synchronized在方法声明上使用修饰符:

interface Interface2 {
    default synchronized void method1() {
        //  ^^^^^^^^^^^^ Modifier 'synchronized' not allowed here
    }

    static synchronized void method2() {
        // ^^^^^^^^^^^^ Modifier 'synchronized' not allowed here
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,我们可以认为,这两个接口的行为方式相同,只是Interface2建立了一个合同上的method1()method2(),这是比强一点Interface1呢.当然,我们也可能会争辩说default实现不应该对具体实现状态做出任何假设,或者这样的关键字根本不会减轻它的重量.

题:

JSR-335专家组决定不支持synchronized接口方法的原因是什么?

java synchronized java-8 jsr335 default-method

208
推荐指数
1
解决办法
2万
查看次数