SEARCH KEYWORD -- STRING CONCATENATION
One good way to use optional parameter in function
In GoLang, it doesn't support method overloading like in Java, hence sometimes it would be a headache to create functions to construct new structs with different parameters. Normally, we would construct the new function as below when want to let others create a new struct instance with explicit function call. type Queue struct { Name string } func NewQueue(name string) *Queue { return &Queue{name} } But with the scope and complexity of the struct increases, there might be more prope...
OPTION PATTERN,VARIADIC FUNCTION,OPTIONAL PARAMETER 2020-09-18 21:45:29
JSON in JavaScript
When sending an AJAX request to the server, the response can have two formats : XMLHttpRequest.responseXML to access data with XML format and XMLHttpRequest.responseText to access data with string format. XML is the standard data transfer format, but one weakness is it's troublesome to parse and retrieve the data. JSON(JavaScript Object Notation) is a light weight data interchange format, we call it the JavaScript object representation. The advantage of using JSON as the data format is itself is...
JSON,JavaScript 2013-05-04 23:25:57
Crash your Chrome with %%30%30
Have you ever wondered a simple string can crash one of the most sophisticated designed web browsers -- Chrome? There is a finding from Andris Atteka who found that a null string "%%30%30" appended to an URL can crash Chrome. For example, if you have below URL in your browser address bar or you mouse over below URL, Chrome will crash: http://www.pixelstech.net/%%30%30 When the browser crashed, it may show : Or on Windows, you will see : This bug has been reported to Google at Is...
What is the use of empty struct in GoLang
In Go, an empty struct struct{} is a struct with no fields that may appear to be of little use, but in reality, it can be useful in certain situations and become a simple and efficient solution in code. As a semaphore or lock Because the empty struct has no fields, it can be conveniently used to implement some concurrency control functions, such as mutex locks, read-write locks. We can use chan struct{} to implement an unbuffered channel for controlling concurrent access. package main import ( ...
GOLANG,EMPTY STRUCT 2024-04-05 23:54:03
Read white space with scanf()
Usually, when we want to enter string with white spaces in C, we need to call gets() or fgets(0 method. We usually will not use scanf(0 or fscanf() because they cannot accept white spaces when scan user inputs. But when we specify the format in scanf() function, we may read strings with white space. the code section below illustrate this: #include <stdio.h> int main(int argc,char **argv){ char name[30]; fprintf(stdout,"Please en...
C,scanf,white space, string format 2011-09-26 11:45:43
ConcurrentHashMap vs Collections.synchronizedMap()
ConcurrentHashMap and Collections.synchronizedMap() both provide thread-safe operations of collections of data. They are used in multithreaded programs to provide both thread safety and performance improvements. In many cases, we can use either of them. But the realization of thread safety is different for these two implementations. ConcurrentHashMap will create an HashEntry[] array internally to store the elements passed in from a Map, while Collections.synchronizedMap() will return a Synchroni...
ConcurrentHashMap,Collections.synchronizedMap 2014-09-18 05:04:59
Java code to retrieve Bing background image path
When Microsoft presented their search engine Bing, this new design gave us some surprise, especially its background images, they are very beautiful and it will change every day. But unfortunately we cannot save the image onto our PC by right clicking the mouse. After some research on its source code, I found a feasible but not so sophisticated way to achieve this, we can retrieve the image path from the source code and then use this path we can download the image. This is just to sh...
Java,Bing,Background image path,URL,Download,Save 2012-05-02 10:51:51
this keyword in Lambda expression in Java 8
Since the release of Java 8, people are excited to see a big feature added to this language which is existing in other languages for a long time -- Lambda expression. The introduction of lambda expression in Java 8 gives people an easy way or a vertical to horizontal way to solve problems. There are many posts on the Internet which shows how to use lambda expression in Java, such as Lambda Quick Start and Java 8 Lambda Expressions Tutorial with Examples. In this post, we will only focus on the t...
THIS,LAMBDA EXPRESSION,JAVA 8 2014-06-01 03:57:05
Use downcase! with caution in Ruby
Ruby provides ! to change state of some object in place. Hence if you see some functions have ! appended, it means the state of the caller of the function is expected to be changed. This is a very interesting Ruby feature. But sometimes one should be cautious when using this kind of functions because you would get unexpected behavior if using improperly. Let's take an example of String#downcase!. According to the documentation. Downcases the contents of str, returning nil if...
RUBY,EXCLAMATION MARK,DOWNCASE 2017-02-10 06:34:44
Will nil == nil be true in GoLang
There is some interview question may ask whether nil == nil be true in GoLang. Wil it be true. false or compilation error? To know the answer, some knowledge about nil in GoLang needs to be explained first. nil definition According to Go's official documentation, the definition of nil is // nil is a predeclared identifier representing the zero value for a // pointer, channel, func, interface, map, or slice type. var nil Type // Type must be a pointer, channel, func, interface, map, or slice type...
GOLANG,NIL,NIL EXPLANATION 2021-08-08 02:54:15
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>