x = {'a':1, 'b': 2}
y = {'b':10, 'c': 11}
z = dict(x.items() + y.items())
print z
Для объектов с ключами в обоих словарях ('b'), можно управлять, какой заканчивается в выводе путем помещения что одно последнее.
Я использую этот путь:
String[] array={
"man","for","think"
}; int j;
затем ниже onCreate
TextView t = findViewById(R.id.textView);
new CountDownTimer(5000,1000) {
@Override
public void onTick(long millisUntilFinished) {}
@Override
public void onFinish() {
t.setText("I "+array[j] +" You");
j++;
if(j== array.length-1) j=0;
start();
}
}.start();
это - простой способ решить эту проблему.
Я Абстрагирую Таймер далеко и сделал его отдельным классом:
Timer.java
import android.os.Handler;
public class Timer {
IAction action;
Handler timerHandler = new Handler();
int delayMS = 1000;
public Timer(IAction action, int delayMS) {
this.action = action;
this.delayMS = delayMS;
}
public Timer(IAction action) {
this(action, 1000);
}
public Timer() {
this(null);
}
Runnable timerRunnable = new Runnable() {
@Override
public void run() {
if (action != null)
action.Task();
timerHandler.postDelayed(this, delayMS);
}
};
public void start() {
timerHandler.postDelayed(timerRunnable, 0);
}
public void stop() {
timerHandler.removeCallbacks(timerRunnable);
}
}
И Извлечение основное действие от Timer
класс как
IAction.java
public interface IAction {
void Task();
}
И я использовали его точно так же, как это:
MainActivity.java
public class MainActivity extends Activity implements IAction{
...
Timer timerClass;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
timerClass = new Timer(this,1000);
timerClass.start();
...
}
...
int i = 1;
@Override
public void Task() {
runOnUiThread(new Runnable() {
@Override
public void run() {
timer.setText(i + "");
i++;
}
});
}
...
}
я Надежда Это Помогает рџЉрџ‘Њ